您当前位置:lerx平台搭建
本类热点
推荐阅读
文章正文
Nginx整合tomcat方法与说明
2010-10-18 09:46:13
lzh

nginx是一个高性能的 HTTP 和 反向代理 服务器,目前许多大型的门户网站都用它来提供WEB服务。如果你的网站访问量很大,可以考虑使用这款软件来取代Apache和IIS。可以到官方网站或本站的软件下载中进行下载。

由于nginx为一款运行于类Unix/Linux环境中的服务器软件,所以本文仅以Linux环境来说明,Windows用户可以到网上下载windows移植版并参考进行安装配置。

安装命令:

./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_flv_module --with-http_addition_module --with-http_ssl_module
make
make install
make clean

 

安装完成后,如果有多个站点,应在tomcat和nginx中分别设定虚拟主机,并进行整合。

下面的配置文件为两个虚拟主机的例子:

 server {
        listen       80;
        server_name  www.mysite1.com;
        root   /home/mysite1/public_html;

        location / {
            index  index.html index.htm  index.jsp;
        }
        #下面是将jsp交给tomcat来处理
        location ~ .*.jsp$
        {
                index index.jsp;
                proxy_pass http://www.mysite1.com:8080;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
   }
server {
        listen       80;
        server_name  www.mysite2.com;
        root   /home/mysite2/public_html;

        location / {
            index  index.html index.htm  index.jsp;
        }

        location ~ .*.jsp$
        {
                index index.jsp;
                proxy_pass http://www.mysite2.com:8080;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
}

 

修改后测试一下

/usr/local/nginx/sbin/nginx -t

如果提示成功,就可以运行了:

/usr/local/nginx/sbin/nginx

最后需要说明的是此种整合方法,必须开放服务器的8080端口。否则可能造成无法访问jsp文件。

tomcat配置参考:

<Host name="www.mysite1.com" appBase="webapps"  unpackWARs="true" autoDeploy="true">
	<Context path="" docBase="/home/mysite1/public_html" debug="0" reloadable="true" crossContext="true">
		<Manager className="org.apache.catalina.session.PersistentManager" saveOnRestart="false">
                        <Store className="org.apache.catalina.session.FileStore"/>
		</Manager>
	</Context>
</Host>
<Host name="http://www.mysite2.com" appBase="webapps"  unpackWARs="true" autoDeploy="true">
	<Context path="" docBase="/home/mysite2/public_html" debug="0" reloadable="true" crossContext="true">
		<Manager className="org.apache.catalina.session.PersistentManager" saveOnRestart="false">
                        <Store className="org.apache.catalina.session.FileStore"/>
		</Manager>
	</Context>
</Host>