![不允许通过代理服务器进行 HTTP](https://linux22.com/image/797027/%E4%B8%8D%E5%85%81%E8%AE%B8%E9%80%9A%E8%BF%87%E4%BB%A3%E7%90%86%E6%9C%8D%E5%8A%A1%E5%99%A8%E8%BF%9B%E8%A1%8C%20HTTP.png)
当我尝试连接到我的Tomcat
服务器时,http://<servername>:8080
它工作正常,但从另一个 ISP 提供时,它出现以下错误:
HTTP through a proxy server is not allowed.
一些 ISP 显然不允许通过端口 8080 运行 http,因为他们认为客户端使用了代理。
httpd
我的网站也在80 端口上运行。
因此,为了避免代理错误,我想进行以下路由:
- 如果用户连接到
http://<servername>
,则该网站将通过 apache 提供服务。 - 如果用户连接到
http://<servername>/AppName
,则端口将被重新路由至 8080,而客户端(或其 ISP)并不知道。
这可能吗(使用 iptables 或其他东西)?
谢谢
答案1
您需要使用 Apache 的mod_proxy(和mod_proxy_ajp2.4),特别是代理通行证配置:
ProxyPass /AppName http://<servername>:8080
这将代理服务器上的连接并将其传递到端口 8080 上的后端服务器。
答案2
那么简单地使用不同的端口怎么样?