但有时候,如果同时有多个,或是许多个,tomcat只能配置一个站点,所以要想运行多了个站点,那就只有多安装几个tomcat了。但另一方面那服务器的80总归只有一个,这样,配置多个tomcat的时候会发现,只能使用其它端口了,这样肯定是不行的。怎么办呢,那就只有想办法,将tomcat的非80端口使用代理了,这样,就成了80端口了,同时又可以运行多个网站。
apache作代理服务器时,转发用户端口号到tomcat的方法有很多,这是其中之一,需要用到mod_rewrite 和 mod_headers这两个模块。下面是步骤:
1.在apache配置文件中追加对上面两个module的引用,不同的系统方法略有区别。大致如下:
[python]
LoadModule rewrite_module /usr/lib64/apache2-prefork/mod_rewrite.so
LoadModule headers_module /usr/lib64/apache2-prefork/mod_headers.so
2.然后在apache配置文件中追加如下rewrite配置
[python]
RewriteEngine on
RewriteRule .* - [E=REMOTE_PORT:%{REMOTE_PORT},NE]
RequestHeader set X-Forwarded-SourcePort %{REMOTE_PORT}e
3.如果在apache上使用了虚拟主机,则还需在每一个段里面加上这两行:
[python]
RewriteEngine On
RewriteOptions Inherit