Apache 2 - у меня запущен Webmin на порту 10000... Я хочу, чтобы к нему был доступ через обычный HTTP-порт (80)

Apache 2 - у меня запущен Webmin на порту 10000... Я хочу, чтобы к нему был доступ через обычный 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>

Это работает, но теперь мне нужно использовать Perl CGI на panel.testsite.org, чтобы найти REMOTE_ADDR и отобразить IP сервера... из-за этого обходного пути прокси. Какой лучший способ сделать то, что мне нужно, без использования прокси или чего-либо, что испортит REMOTE_ADDR

решение1

Учитывая, что вы используете прокси-сервер, вам следует использоватьЗаголовки запроса обратного прокси-сервера:

  • X-Forwarded-For IP-адрес клиента.
  • X-Forwarded-Host Исходный хост, запрошенный клиентом в заголовке HTTP-запроса Host.
  • X-Forwarded-Server Имя хоста прокси-сервера.

Связанный контент