虛擬主機配置,Apache httpd 在非 80 連接埠上運行

虛擬主機配置,Apache httpd 在非 80 連接埠上運行

我正在嘗試使用 Apache 和 HOSTS 檔案組合在我的 Windows 電腦上配置虛擬主機。

例如,我希望www.example.com從位於 的伺服器獲得服務localhost。但是,連接埠80已被 Citrix 程序佔用,無法變更。

所以,我的httpd運行在 81 上。

  1. 我打http://www.example.com在我的瀏覽器上。
  2. 儘管在 81 上運行,Apache 虛擬主機配置應該會收到此請求。
  3. 提供頁面來自http://localhost:81/htdocs

這有可能嗎?

以下是我的相關部分httpd.conf

ServerName www.example.com:81
NameVirtualHost www.example.com:81

我的hosts文件有以下行:

127.0.0.1 www.example.com

答案1

將以下程式碼片段放入httpd.conf並查看是否有效。它在內部將所有請求轉發http://localhost:8080/rathttp://localhost:9080/rat

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so

ProxyRequests Off

<Proxy *>
Order deny,allow
Allow from all
</Proxy>

ProxyPass /rat http://localhost:9080/rat
ProxyPassReverse /rat http://localhost:9080/rat

瀏覽器中的 URL 保持不變, http://www.example.com:8080/rat但內容由http://localhost:9080/rat

相關內容