Tomcat(二):Nginx反向代理实现Tomcat动静分离

Tomcat(二):Nginx反向代理实现Tomcat动静分离

实验拓扑:

输入图片说明

实验环境:

OS:CentOS-6.7-x86_64

Nginx:

IP:192.168.1.4

Tomcat:

IP:192.168.1.5

实验流程:

Tomcat:

先安装Jvm:openjdk:

1[root@node1 ~]# yum install java-1.7.0-openjdk 2[root@node1 ~]# java -version 3java version "1.7.0_79" 4OpenJDK Runtime Environment (rhel-2.5.5.4.el6-x86_64 u79-b14) 5OpenJDK 64-Bit Server VM (build 24.79-b02, mixed mode)

安装tomcat:

官网:http://tomcat.apache.org

1[root@node1 ~]# tar xf apache-tomcat-7.0.65.tar.gz -C /usr/local/ 2[root@node1 ~]# cd /usr/local/ 3[root@node1 local]# ln -sv apache-tomcat-7.0.65 tomcat 4"tomcat" -> "apache-tomcat-7.0.65" 5[root@node1 ~]# vim /etc/profile.d/tomcat.sh 6export CATALINA_HOME=/usr/local/tomcat 7export PATH=$CATALINA_HOME/bin:$PATH 8[root@node1 ~]# source /etc/profile.d/tomcat.sh

提供脚本:

1[root@node1 ~]# cat /etc/rc.d/init.d/tomcat 2#!/bin/sh 3# Tomcat init script for Linux. 4# 5# chkconfig: 2345 96 14 6# description: The Apache Tomcat servlet/JSP container. 7# JAVA_OPTS='-Xms64m -Xmx128m' 8JAVA_HOME=/usr/lib/jvm/jre 9CATALINA_HOME=/usr/local/tomcat 10export JAVA_HOME CATALINA_HOME 11 12case $1 in 13start) 14 exec $CATALINA_HOME/bin/catalina.sh start ;; 15stop) 16 exec $CATALINA_HOME/bin/catalina.sh stop;; 17restart) 18 $CATALINA_HOME/bin/catalina.sh stop 19 sleep 2 20 exec $CATALINA_HOME/bin/catalina.sh start ;; 21*) 22 echo "Usage: `basename $0` {start|stop|restart}" 23 exit 1 24 ;; 25esac 26[root@node1 ~]# chmod +x /etc/rc.d/init.d/tomcat 27[root@node1 ~]# chkconfig tomcat --add

定义管理页面用户名及密码:

1[root@node1 ~]# cd /usr/local/tomcat/conf 2[root@node1 conf]# vim tomcat-users.xml 3<role rolename="manager-gui"/> 4 <role rolename="admin-gui"/> 5 <user username="tomcat" password="tomcat" roles="manager-gui,admin-gui"/> 6[root@node1 conf]# service tomcat start 7[root@node1 conf]# chkconfig tomcat on

访问测试:

输入图片说明

部署站点文件:

1[root@node1 ~]# mkdir -p /tomcat/webapps 2[root@node1 ~]# unzip JspRun\!_6.0.0_GBK.zip 3[root@node1 ~]# mv upload /tomcat/webapps/jsprun 4[root@node1 ~]# cd /tomcat/webapps 5[root@node1 webapps]# chmod -R 777 jsprun 6[root@node1 webapps]# cd jsprun 7[root@node1 jsprun]# vim config.properties 8dbhost = 192.168.1.5 9dbport=3306 10dbuser = jruser 11dbpw = jrpass 12dbname = jrdb

定义虚拟主机,并重启tomcat:

1[root@node0 ~]# cd /usr/local/tomcat 2[root@node0 tomcat]# vim conf/server.xml 3 4<Engine name="Catalina" defaultHost="node1.chencer.org"> 5 6<Host name="node1.chencer.org" appBase="/tomcat/webapps" unpackWARs="true" autoDeploy="true"> 7<Context path="/bbs" docBase="jsprun" /> 8</Host> 9[root@node1 ~]# service tomcat restart

安装并启动mysql:

1[root@node0 mysql-5.5-rpm]# yum install MySQL-shared-compat-5.5.48-1.el6.x86_64.rpm MySQL-client-5.5.48-1.el6.x86_64.rpm MySQL-server-5.5.48-1.el6.x86_64.rpm 2[root@node0 ~]# service mysql start 3[root@node0 ~]# chkconfig mysql on

创建数据库,并赋予权限:

1[root@node0 ~]# mysql 2mysql> create database jrdb; 3Query OK, 1 row affected (0.00 sec) 4mysql> grant all on jrdb.* to 'jruser'@'192.168.1.5' identified by 'jrpass'; 5Query OK, 0 rows affected (0.00 sec) 6mysql> flush privileges; 7Query OK, 0 rows affected (0.00 sec)

安装站点,并访问测试:

输入图片说明

Nginx:

安装并配置Nginx:

[root@node0 ~]# yum install nginx

动态页面重定向至tomcat:

1[root@node0 ~]# cd /etc/nginx/conf.d/ 2[root@node0 conf.d]# vim default.conf 3server { 4 listen 80; 5 server_name node0.chencer.org; 6 index index.jsp; 7 8 location ~* \.(jsp|do)$ { 9 proxy_pass http://192.168.1.5:8080; 10 } 11} 12[root@node0 conf.d]# service nginx start 13[root@node0 conf.d]# chkconfig nginx on

访问测试:

输入图片说明

部署站点静态文件:

1[root@node0 ~]# mkdir -p /web/jsprun 2[root@node0 ~]# scp -r node1:/tomcat/webapps/jsprun/* /web/jsprun/

编辑配置文件:

1[root@node0 conf.d]# vim default.conf 2server { 3 listen 8080; 4 server_name 192.168.1.4; 5 index index.jsp; 6 location / { 7 root /web/jsprun; 8 index index.html; 9 } 10} 11 12server { 13 listen 80; 14 server_name node0.chencer.org; 15 index index.jsp; 16 location / { 17 proxy_pass http://192.168.1.5:8080; 18 } 19 location ~\.(html|htm|xml|gif|jpg|jpeg|ico|swf)$ { 20 proxy_pass http://192.168.1.4:8080; 21 } 22 location ~* \.(jsp|do)$ { 23 proxy_pass http://192.168.1.5:8080; 24 } 25} 26[root@node0 ~]# service nginx restart

访问测试:

输入图片说明

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

2020年前端实用代码段,为你的工作保驾护航

有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )