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>

이것은 작동하지만 이제 이 프록시 해결 방법으로 인해 REMOTE_ADDR을 찾고 서버의 IP를 표시하려면 panel.testsite.org에서 Perl CGI를 사용해야 합니다. REMOTE_ADDR을 망칠 수 있는 프록시나 기타 항목을 사용하지 않고 필요한 작업을 수행할 수 있는 더 좋은 방법은 무엇입니까?

답변1

프록시를 사용하는 경우 다음을 사용해야 합니다.역방향 프록시 요청 헤더:

  • X-Forwarded-For 클라이언트의 IP 주소입니다.
  • X-Forwarded-Host Host HTTP 요청 헤더에서 클라이언트가 요청한 원래 호스트입니다.
  • X-Forwarded-Server 프록시 서버의 호스트 이름입니다.

관련 정보