
一些資訊:
如果我造訪 mysite.com:9999 我會得到我的網站,例如 45.40.45.40:9999 .. 45.40.45.40 是我的路由器的公共 IP,後面是用於連接 ubuntu 上 virtualbox 上的 apache 伺服器的非標準連接埠。
我使用 namecheap.com 的 dns 重定向來將 mysite.com 重定向到我的 public_ip:used_port_to_connect_Apache,因此在連接後,網址中的內容將如下所示:45.40.45.40:9999。
我的問題是:如何將“45.40.45.40:9999”轉換/返回到原始網域(僅限 mysite.com)?
我需要做什麼?這是 Apache 設定設定嗎?它是 Apache 伺服器上的虛擬主機。
/etc/apache2/sites-available/mysite.com.conf:
Listen 9999
<VirtualHost *:9999>
<Directory /var/www/mysite.com/html>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Require all granted
</Directory>
ServerAdmin [email protected]
ServerName mysite.com
ServerAlias www.mysite.com
DocumentRoot /var/www/mysite.com/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
請幫忙。
答案1
只需將 mysite.com 解析為 45.40.45.40 即可。然後連接到http://mysite.com:9999從您的瀏覽器。不需要重定向。也無需更改路由器或 apache 配置中的任何內容。
如果您還想隱藏連接埠號,則必須使用反向代理程式取代最初執行的重新導向。那將是一些監聽連接埠 80 的伺服器(apache、nginx...)代理商對真實網頁伺服器的請求。所有請求將始終透過此反向代理。已經有如何設定反向代理的答案,例如:
然而,執行此操作的工作量相當大,您所獲得的只是 URL 中的字元少了一些。