实验环境

centos6.4

代理服务器: 外网地址 172.16.4.7

内网地址 192.168.4.11

静态内容服务器 192.168.10.13

动态内容服务器 192.168.10.12 软件:apache-tomcat-7.0.42.tar.gz jdk-7u9-linux-x64.rpm

说明:用户通过访问代理服务器的外网ip请求到后端服务器的资源,静态页面的通过192.168.10.13得到,动态页面通过192.168.10.12得到。

一、在后端服务器上安装 tomcat、jdk

1、安装jdk

# rmp -ivh jdk-7u9-linux-x64.rpm
# vim /etc/profile.d/java.sh
export JAVA_HOME=/usr/java/latest
export PATH=$JAVA_HOME/bin:$PATH
#. /etc/profile.d/java.sh
# java -version #查看java版本
java version "1.7.0_09"
Java(TM) SE Runtime Environment (build 1.7.0_09-b05)
Java HotSpot(TM) 64-Bit Server VM (build 23.5-b02, mixed mode)

2、安装部署tomcat


# tar xf apache-tomcat-7.0.42.tar.gz -C /usr/local/
# cd /usr/local/
# ln -sv apache-tomcat-7.0.42 tomcat
# vim /etc/profile.d/tomcat.sh
export CATALINA_HOME=/usr/local/tomcat
export PATH=$CATALINA_HOME/bin:$PATH
#. /etc/profile.d/tomcat.sh

3、为Tomcat提供SysV脚本/etc/init.d/tomcat

#!/bin/sh
# Tomcat init script for Linux.
# chkconfig: 2345 96 14
# description: The Apache Tomcat servlet/JSP container.
CATALINA_HOME=/usr/local/tomcat #注意你的脚本路径
export CATALINA_HOME
# export CATALINA_OPTS="-Xms128m -Xmx256m"
exec $CATALINA_HOME/bin/catalina.sh $*


#chmod +x /etc/init.d/tomcat
# chkconfig --add tomcat
#service tomcat start #或者使用/usr/local/tomcat/bin/catalina.sh

4、进行配置

# catalina.sh version          #查看版本
# catalina.sh configtest #检查错误之前要保证服务关闭状态

# vim /usr/local/tomcat/conf/tomcat-users.xml #加用户
-->
<role rolename="manager-gui"/>
<role rolename="admin-gui"/>
<role rolename="tomcat" password="tomcat" roles="manager-gui,admin-gui"/>

# mkdir /tomcat/app1 -pv


# vim /usr/local/tomcat/conf/server.xml #配置文件
<Host name="www.test.com" appBase="/tomcat/app1"
unpackWARs="true" autoDeploy="true">
<Context path="/" docBase="/tomcat/app1" />
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="test_access_log." suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>

<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
修改默认主机为 <Engine name="Catalina" defaultHost="www.test.com">

#service tomcat stop
#service tomcat start

5、安装并启动mysql服务

#yum -y install mysql-server

#service mysqld start

6、安装论坛程序


# unzip JspRun\!_6.0.0_GBK.zip 
# mv upload/* /tomcat/app1
# service tomcat stop
# service tomcat start

# mysql -u root -p
mysql> grant all on jsprun.* to 'jspuser'@'localhost' identified by 'jspmypass'; #mysql中授权一个用户jspuser
mysql> flush privileges;

访问http://172.16.4.5/install.jsp 进入论坛安装界面,按照要求安装就可以进入论坛首页了

二、安装并配置nginx服务器

1、参考​​http://qidian510.blog.51cto.com/7319882/1297951​


2、开启转发功能


#vim /etc/sysctl.conf
net.ipv4.ip_forward = 1 #打开转发功能

#sysctl -p
#sysctl -a | grep ip_forward #验证确认开启转发

3、编辑配置文件/etc/nginx/nginx.conf,也可以编辑conf.d下的默认配置文件

server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
#root html;
#index index.html index.htm;
proxy_pass http://192.168.10.12/;
}
}

4、启动服务

#service nginx start

三、如何实现动静分离

1、需要再配置一台服务器提供论坛的静态内容,nginx也可以编辑conf.d下的默认配置文件

#yum install nginx -y
#vim /etc/nginx/nginx.conf

server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root /web/html;
index index.html index.htm;
}


#mkdir /web/html -pv


2、下载并安装论坛程序

# unzip JspRun\!_6.0.0_GBK.zip 
# mv upload/* /web/html/
#service nginx start
#ifconfig eth0 192.168.10.13/24 #设置ip地址
#route add default gw 192.168.10.254


3、回到转发服务器配置动静分离


server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
index index.jsp;
location / {
root html;
index index.html index.htm;
}

location ~* \.(jpg|png|js|jpeg|gif|htm|html) {
proxy_pass http://192.168.10.13;
}
location ~* \.(jsp|do|css)$ {
proxy_pass http://192.168.10.12;
}
}

css属于静态内容,但是这个程序需要和动态内容一起转发,如果是其他程序请另外配置。


4、重新加载并进行测试

#service nginx reload


访问http://172.16.4.7/index.jsp

至此,就可以实现动静分离了。