整合Nginx和Tomcat

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了整合Nginx和Tomcat相关的知识,希望对你有一定的参考价值。

<--目录-->

1、为什么要整合 nginx + Tomcat服务

2、安装Nginx

3、安装Jdk

4、安装Tomcat

5、Nginx反向代理负载均衡配置

6、Nginx动静分离配置

7、修改Tomcat访问路径


【为什么要整合 Nginx + Tomcat服务】

1、早期的Resin、Tomcat对httpd服务支持不好

2、Tomcat、Resin,rewrite功能,expires,gzip功能支持不好

3、为了要配动静分离


【安装Nginx】

yum -y groupinstall "开发工具" "开发库"

yum -y install gcc gcc-c++ make pcre-devel openssl openssl-devel

useradd -M -s /sbin/nologin www

cd /opt    #源码包存文路径

tar -zxf nginx-1.8.0.tar.gz

cd nginx-1.8.0

./configure --prefix=/usr/local/nginx  --pid-path=/usr/local/nginx/nginx.pid --user=www  --group=www --with-http_ssl_module  --with-http_flv_module --with-http_stub_status_module --with-http_gzip_static_module --http-client-body-temp-path=/usr/local/nginx/client --http-proxy-temp-path=/usr/local/nginx/proxy --http-fastcgi-temp-path=/usr/local/nginx/fcgi --http-uwsgi-temp-path=/usr/local/nginx/uwsgi --http-scgi-temp-path=/usr/local/nginx/scgi --with-pcre --without-http_rewrite_module

make

make install

rm -f /usr/local/nginx/conf/nginx.conf

cp /opt/nginx.conf /usr/local/nginx/conf/

cp /opt/nginx /etc/init.d/nginx

elinks --dump http://localhost


【安装JDK】

cd /opt

rpm -ivh jdk-7u79-linux-x64.rpm 

cd /usr/java/

mv jdk1.7.0_79/ /usr/local/jdk

sed -i ‘export JRE_HOME=/usr/local/jdk‘ /etc/bashrc

sed -i ‘export JAVA_BIN=/usr/local/jdk/bin‘ /etc/bashrc

sed -i ‘export PATH=$JRE_HOME/bin:$PATH‘ /etc/bashrc

sed -i ‘export CLASSPATH=.:$JRE_HOME/lib/dt.jar:$JRE_HOME/lib/tools.jar‘ /etc/bashrc

sed -i ‘export JRE_HOME JAVA_BIN PATH CLASSPATH‘ /etc/bashrc

source /etc/bashrc

echo $JRE_HOME

java -version


【安装Tomcat】

cd /opt

unzip apache-tomcat-7.0.61-windows-x64.zip

mv apache-tomcat-7.0.61 /usr/local/tomcat 

cd /usr/local/tomcat/bin

chmod +x *.sh

./startup.sh

netstat -tulnp | grep :8080 

elinks --dump http://localhost:8080


【Nginx反向代理负载均衡配置】

http {

...

 upstream webgrp {

        server 192.168.1.233:8080;    #服务器组下的IP和端口号

        server 192.168.1.234:8080;    #每台机轮询一次

}

...

 server {    #servier端跟upstream同级

     location /api {

                   proxy_pass http://webgrp;    #接收到443的请求后代替访问tomcat的8080端口

                   }

 }


【Nginx动静分离配置】

server {

        listen       80;

        server_name  localhost;    #如果这里做了域名解析,这里就填域名

        root html; #开启nginx让其解析静态文件

        location ~ .*\.(gif|jpg|jpeg|png|bmp|ioc|swf|raz|zip|txt|flv|mid|doc|ppt|pdf|xls|html|htm|shtml|mp3|wma|js|css)$ {     #列出的静态文件交给nginx处理

                        expires      7d;     #7天过期

        }


【修改Tomcat访问路径】

vim /usr/local/tomcat/conf/server.xml

...

<Context path="" docBase="/usr/local/tomcat/webapps/" debug="0" privileged="true"/>   #把Context path改成现在的这一行路径

...


注意:所有Nginx和Tomcat修改了配置文件后都要重启才能够生效


本文出自 “wsyht的博客” 博客,请务必保留此出处http://wsyht2015.blog.51cto.com/9014030/1791372

以上是关于整合Nginx和Tomcat的主要内容,如果未能解决你的问题,请参考以下文章

电商平台 lnmp 架构之 nginx+tomcat

nginx和php整合安装过程记录

tomcat+nginx部署站点

nginx代理

从JavaWeb的角度认识Nginx

FastDFS安装和配置,整合Nginx-1.13.3