不允许通过代理服务器的HTTP

时间:2012-11-19 22:04:46

标签: apache tomcat centos port80

当我尝试连接到Tomcat上的http://<servername>:8080服务器时,它运行正常,但是从其他ISP提供它会出现以下错误:

HTTP through a proxy server is not allowed.

有些ISP显然不允许在端口8080上使用http,因为他们认为客户端使用代理。

我的网站也在端口80上运行httpd

因此,为了避免代理错误,我想进行以下路由:

  • 如果用户连接到http://<servername>,则该网站将通过apache提供。
  • 如果用户连接到http://<servername>/AppName,则端口将重新路由到8080,而客户端(或其ISP)不知道。

这可能吗(使用iptables或其他东西)?

谢谢

1 个答案:

答案 0 :(得分:2)

您可以使用mod_proxy

配置Apache为您执行此操作

在你的apache conf中添加类似这样的内容

ProxyPass /appName http://localhost:8080/appName
ProxyPassReverse /appName http://localhost:8080/appName

http://httpd.apache.org/docs/current/mod/mod_proxy.html

使用Tomcat,您还可以使用mod_proxy AJP

http://httpd.apache.org/docs/current/mod/mod_proxy_ajp.html