我在端口8080上的服务器上有一些Web应用程序可用.
由于我的一些用户由于防火墙无法访问端口8080,我想在我的apache服务器上设置重定向.我想要以下网址
http://dev2.test.com/tomcat/somewebapp/restofthepath
http://dev2.test.com:8080/somewebapp/restofthepath
当然我不希望用户输入第一个地址来查看第二个地址.
我在/ var / www中添加了以下.htaccess文件:
RewriteEngine on RewriteCond %{REQUEST_URI} ^/(tomcat) RewriteRule ^/tomcat/(.*)$http://dev2.test.com:8080/$1 [P,QSA,L]
但我在/var/log/apache2/error.log中收到此错误:
[Tue Oct 09 15:23:06 2012] [error] File does not exist: proxy:http://dev2.test.com:8080/tomcat/
你能告诉我应该怎么做吗?
您可能应该使用
mod_proxy
而不是mod_rewrite.
ProxyPass /tomcat http://dev2.test.com:8000/ ProxyPassReverse /tomcat http://dev2.test.com:8000/
编辑:
此配置必须位于httpd.conf中.它可能位于VirtuaHost部分或文件的根目录中.
你必须启用mod_proxy.这可以使用
LoadModule proxy_module /usr/lib/apache2/modules/mod_proxy.so LoadModule proxy_http_module /usr/lib/apache2/modules/mod_proxy_http.so