У меня есть экземпляр Apache, работающий на том же сервере, что и другое веб-приложение. Я не хочу вмешиваться или пытаться изменить это стороннее приложение.
Я хочу использовать обратный прокси-сервер в моем экземпляре Apache для переадресации другого порта другому экземпляру веб-приложения. Мой экземпляр Apache настроен и обратный прокси-сервер включен и работает, но он будет работать, только если я использую IPL-адрес сервера publi c и я хочу использовать localhost, чтобы избежать выхода traffi c и снова в.
Если я использую 127.0.0.1
или localhost
, я получаю следующее в error.log (стороннее веб-приложение работает на порту 10012), и на веб-странице отображается ошибка 503
[Sun Mar 15 20:07:44.009499 2020] [proxy:error] [pid 3538:tid 140542704858880] (111)Connection refused: AH00957: HTTP: attempt to connect to 127.0.0.1:10012 (localhost) failed
[Sun Mar 15 20:07:44.009575 2020] [proxy_http:error] [pid 3538:tid 140542704858880] [client xxx.xxx.xxx.xxx:51902] AH01114: HTTP: failed to make connection to backend: localhost
Это моя конфигурация VirtualHost:
<VirtualHost *:6001>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ErrorLog /error.log
CustomLog /access.log combined
ProxyPass /error/ !
ErrorDocument 503 /error/503.html
ProxyPreserveHost On
ProxyRequests Off
ServerName www.server.com
ServerAlias server.com
ProxyPass / http://localhost:10012/
ProxyPassReverse / http://localhost:10012/
RemoteIPHeader X-Forwarded-For
RemoteIPInternalProxy 127.0.0.0/8
Include /etc/letsencrypt/options-ssl-apache.conf
SSLCertificateFile /etc/letsencrypt/live/www.server.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/www.server.com/privkey.pem
</VirtualHost>
Если я изменю вышеуказанные записи ProxyPass и ProxyPassReverse на IP-адрес publi c, он будет работать правильно.
Почему это не работает с localhost
или 127.0.0.1