我正在尝试设置我的 Apache2 反向代理,以便我可以拥有一个域并将其重定向到在不同 VM 上运行的多个 Docker 应用程序https://apps.mydomain.com/ https://apps.domain.com/app1等等,但我无法让它工作。
我知道防火墙不是问题,因为如果我访问 http://IP:PORT,应用程序就可以正常加载。
我的配置看起来不错,但我在这方面是个业余爱好者,有人能指出我做错了什么吗?我已经搜索解决方案好几天了,但仍然无法让它工作。
Apache 错误日志仅返回此错误:
[proxy_http:error] [pid 628660] [client 5.XXX:60924] AH01114:HTTP:无法连接到后端:94.XXX [proxy:error] [pid 628660] (110)连接超时:AH00957:http:尝试连接到 94.XXX:8585 (*) 失败
<VirtualHost *:80>
ServerName apps.mydomain.com
DocumentRoot /var/www/html
ProxyPreserveHost On
RewriteEngine On
ProxyPass /.well-known !
RewriteRule ^/app1/(.*) http://94.X.X.X:8082/app1/$1 [P,L]
ProxyPassReverse /app1/ http://94.X.X.X:8082/app1/
RewriteRule ^/app2/(.*) http://94.X.X.X:8686/app2/$1 [P,L]
ProxyPassReverse /app2/ http://94.X.X.X:8686/app2
RewriteRule ^/app3/(.*) http://94.X.X.X:8787/app3/$1 [P,L]
ProxyPassReverse /app3/ http://94.X.X.X:8787/app3
RewriteRule ^/app4/(.*) http://94.X.X.X:8989/app4/$1 [P,L]
ProxyPassReverse /app4/ http://94.X.X.X:8989/app4/
RewriteRule ^/(.*) http://94.X.X.X:8585/$1 [P,L]
ProxyPassReverse / http://94.X.X.X:8585
ErrorLog ${APACHE_LOG_DIR}/apps-error.log
CustomLog ${APACHE_LOG_DIR}/apps-access.log combined
RewriteCond %{SERVER_NAME} =apps.mydomain.com
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>