Apache 2 - 我在連接埠 10000 上執行 webmin...我希望透過普通 HTTP 連接埠 (80) 存取它

Apache 2 - 我在連接埠 10000 上執行 webmin...我希望透過普通 HTTP 連接埠 (80) 存取它

目前我正在使用配置來執行此操作。

NameVirtualHost *
<VirtualHost *>
        ServerName testsite.org
        ServerAdmin [email protected]
        DocumentRoot /var/www/
        <Directory /var/www/>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride All
                Order allow,deny
                allow from all
        </Directory>

        ErrorLog /var/log/apache2/error.log
        LogLevel warn

        CustomLog /var/log/apache2/access.log combined
        ServerSignature on

</VirtualHost>

<VirtualHost *>
        ServerName panel.testsite.org
        ProxyPass / http://panel.testsite.org:10000/
        ProxyPassReverse / http://panel.testsite.org:10000/
</VirtualHost>

這是可行的,但現在我需要在 panel.testsite.org 上使用 Perl CGI 來尋找 REMOTE_ADDR 及其顯示伺服器的 IP...因為有此代理解決方法。有什麼更好的方法可以讓我在不使用代理或任何會弄亂 REMOTE_ADDR 的情況下執行我需要的操作

答案1

鑑於您正在使用代理,您應該使用反向代理請求標頭:

  • X-Forwarded-For 客戶端的IP位址。
  • X-Forwarded-Host Host HTTP 請求頭中用戶端請求的原始主機。
  • X-Forwarded-Server 代理伺服器的主機名稱。

相關內容