您的位置:首页 > 运维架构 > Tomcat

整合Nginx和Tomcat

2016-06-21 14:28 543 查看
#目录
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[/code] href="http://localhost" target=_blank>

#安装JDK
cd /opt
rpm -ivh jdk-7u79-linux-x64.rpm
cd /usr/java/
mv jdk1.7.0_79/ /usr/local/jdk
sed -i '$a export JRE_HOME=/usr/local/jdk' /etc/bashrc
sed -i '$a export JAVA_BIN=/usr/local/jdk/bin' /etc/bashrc
sed -i '$a export PATH=$JRE_HOME/bin:$PATH' /etc/bashrc
sed -i '$a export CLASSPATH=.:$JRE_HOME/lib/dt.jar:$JRE_HOME/lib/tools.jar' /etc/bashrc
sed -i '$a 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[/code] 
#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修改了配置文件后都要重启才能够生效
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Tomcat 反向代理 Nginx