【问题标题】:Apache reverse proxy configuration issueApache 反向代理配置问题
【发布时间】:2017-10-24 23:58:57
【问题描述】:

我在设置 apache 反向代理服务器时遇到问题,希望您能提供帮助。

我有 3 个 ubuntu 网络服务器,可在 https://service1.domain.comhttps://service2.domain.com:4433 等上使用... 现在,我无需在地址栏中输入端口即可访问这些服务器。

所以我的想法是使用反向代理服务器,我可以输入 service2.domain.com 并重定向到 service2 (https)。

我用 apache 安装了一个 ubuntu 服务器并启用了模块:

sudo a2enmod proxy
sudo a2enmod proxy_http
sudo a2enmod proxy_balancer
sudo a2enmod lbmethod_byrequests

然后我在代理上设置000-default.conf,内容如下:

<VirtualHost service1.domain.com:80>
    ProxyPreserveHost On

    ProxyPass / https://service1.domain.com/
    ProxyPassReverse / https://service1.domain.com/
</VirtualHost>

<VirtualHost service2.domain.com:80>
    ProxyPreserveHost On

    ProxyPass / https://service2.domain.com/
    ProxyPassReverse / https://service2.domain.com/
</VirtualHost>

路由器上的 80 和 443 端口被转发到代理服务器。 在 service(1-3) 服务器上,使用 Lets Encrypt 的证书启用 SSL。

现在,如果我尝试打开站点 service1.domain.com,我会收到一个错误 (cert_name)。 现在应该不能直接访问这些站点,因为不再有端口转发。

我现在的问题是,反向代理的正确配置如何?我还需要在代理服务器上为每个服务启用证书吗?

感谢您的帮助!

【问题讨论】:

  • 没人帮忙吗?

标签: linux apache ssl proxy


【解决方案1】:

不确定您的最终目标是什么。该证书适用于面向客户端的服务器。如果您希望人们无需设置端口即可访问该站点,您可以使用虚拟主机配置中的 Redirect 语句。

<VirtualHost *:80>

    ServerName example.com
    ServerAlias www.example.com
    Redirect permanent / https://www.example.com

</VirtualHost>

这将转发任何​​非 ssl 流量以使用 ssl 虚拟主机。

【讨论】:

    猜你喜欢
    • 2015-04-26
    • 1970-01-01
    • 1970-01-01
    • 2018-02-14
    • 1970-01-01
    • 2017-08-16
    • 2023-04-01
    • 2018-01-05
    相关资源
    最近更新 更多