Apache 2.4 使用 HTTPd 的反向代理

Apache 2.4 使用 HTTPd 的反向代理

我创建了一个具有公共 IP 的 AWS EC2 实例,我们称之为 100.0.0.0。

我为安全组添加了一条规则,以允许任何 IPv4 在端口 80 上传入 HTTP 流量。

我在配置文件中添加了:/etc/httpd/conf/httpd.conf

<VirtualHost *:80>
    ProxyPreserveHost On
    ProxyPass /test/ http://www.example.com/
    ProxyPassReverse /test/ http://www.example.com/
</VirtualHost>

当我去http://100.0.0.0/测试/,我的浏览器显示 404 - Not Found。error_log 中没有任何内容。

我也尝试过本地主机

<VirtualHost *:80>
    ProxyPreserveHost On
    ProxyPass /test/ http://localhost:8080/
    ProxyPassReverse /test/ http://localhost:8080/
</VirtualHost>

&

<VirtualHost *:80>
    ProxyPreserveHost On
    ProxyPass /test/ http://127.0.0.1:8080/
    ProxyPassReverse /test/ http://127.0.0.1:8080/
</VirtualHost>

这给了我日志:

连接被拒绝:AH00957:http:尝试连接到 127.0.0.1:8080(127.0.0.1)失败

AH01114:HTTP:无法连接到后端:127.0.0.1,引荐来源:http://100.0.0.0/

由于这是使用 AWS 创建的,因此我还尝试创建出站规则,允许任何 IPv4。我不确定是否需要在 AWS 中设置更多规则,或者我是否错过了配置代理的步骤。

请参阅我关注的文档:https://linuxtechlab.com/apache-as-reverse-proxy-centos-rhel/

我还参考了:https://httpd.apache.org/docs/2.4/howto/reverse_proxy.html这让我想到www.example.com例子。

netstat -aon | grep 8080
TCP    0.0.0.0:8080           0.0.0.0:0              LISTENING       22304
TCP    [::]:8080              [::]:0                 LISTENING       22304
TCP    [::1]:8080             [::]:0                 LISTENING       25212

相关内容