Apache/Ubuntu 上的反向代理
Posted
技术标签:
【中文标题】Apache/Ubuntu 上的反向代理【英文标题】:Reverse Proxy on Apache/Ubuntu 【发布时间】:2020-07-12 01:17:45 【问题描述】:我需要使用 Lets Encrypt 为多个应用服务器设置反向代理。我安装了 Webagte 服务器:
Ubuntu Server 18.04 LTS
Apache 2.4
Apache 运行正常并显示“第一”页。 但是当我把这个:
<VirtualHost *:80>
ServerAdmin "my@mail.tld"
ServerName "app1.mydomain.tld"
DocumentRoot "/var/www/app1.mydomain.tld"
ProxyPreserveHost On
ProxyPass "/.well-known/" !
ProxyPass "/test-broker/" !
ProxyPass "/" "http://192.168.1.21:20000/"
ProxyPassReverse "/" "http://192.168.1.21:20000/"
</VirtualHost>
文件 /etc/apache2/sitest-enabled/000-default.conf 并打开我的浏览器页面我得到 ERR_CONNECTION_REFUSED。
清单:
/var/www/app1.mydomain.tld 存在。 http://192.168.1.21:20000/ 工作。 DNS 中的 app1.mydomain.tld 存在并指向 webgate 服务器。 a2enmod 代理已启用。 a2enmod proxy_http 已启用。 a2enmod proxy_ajp 已启用。 a2enmod 重写已启用。 a2enmod deflate 已启用。 a2enmod 标头已启用。 a2enmod proxy_balancer 已启用。 a2enmod proxy_connect 已启用。 a2enmod proxy_html 已启用。感谢您的帮助。
【问题讨论】:
可能是客户端问题。你可以从另一个浏览器和或另一台机器上试试吗?您可以通过命令行使用curl
来访问它吗? downforeveryoneorjustme.com
【参考方案1】:
您在那里的虚拟主机只会用于 HTTP 流量,因此服务器拒绝来自浏览器在标准 HTTPS 端口 443 上的连接。
您将需要一个额外的 443 <VirtualHost *:443>
虚拟主机,其中包含根据 Apache SSL HowTo 的 ssl 配置。
【讨论】:
以上是关于Apache/Ubuntu 上的反向代理的主要内容,如果未能解决你的问题,请参考以下文章