Nginx 实现反向代理
两个域名指向同一台 Nginx 服务器,用户访问不同的域名显示不同的网页内容
两个域名分别是 www.test1.com www.test2.com
1、准备工作
下载及安装 Nginx ( http://www.cnblogs.com/fangwu/p/8167816.html )
下载tomcat: 链接:https://pan.baidu.com/s/1o7PSsMe 密码:id0g
1.1关掉防火墙
service iptables stop
2、解压 tomcat
tar -zxvf apache-tomcat-7.0.47
3、复制两个 tomcat 为 tomcat1 和 tomcat2
cp apache-tomcat-7.0.47 tomcat1 -r
cp apache-tomcat-7.0.47 tomcat2 -r
4、修改 tomcat2 的端口号为 8081
在 tomcat2/conf/serverxml 找到下面 3个地方修改即可
5、启动两个 tomcat
tomcat1/bin/startup.sh
tomcat2/bin/startup.sh
6、查看 tomcat 是否启动成功
tail -f tomcat1/logs/catalina.out
tail -f tomcat2/logs/catalina.out
7、配置 Nginx
在 nginx.conf 配置文件的 http{ } 节点下 , 增加以下内容
upstream tomcat1 {
server 192.168.25.148:8080;
}
server {
listen 80;
server_name www.test2.com;
location / {
proxy_pass http://tomcat1;#指向第一行代码 upstream tomcat1
index index.html index.htm;
}
}
upstream tomcat2 {
server 192.168.25.148:8081;
}
server {
listen 80;
server_name www.test2.com;
location / {
proxy_pass http://tomcat2;
index index.html index.htm;
}
}
listen :监听的端口 (例子:80)
server_name : 服务名(例子:www.test1.com)
proxy_pass:代理转发(例子:http://tomcat1)
upstream:响应转发的服务器(例子:upstream tomcat1)
在浏览器中输入www.test1.com:80,就会触发 location 下面的 proxy_pass http://tomcat1 (代理转发),然后转发到 upstream tomcat1 下面配置的服务器,这样就实现的反向代理
负载均衡请看:http://www.cnblogs.com/fangwu/p/8168791.html
8、修改 hosts 文件 ( C:WindowsSystem32driversetc )
下图的 ip 为 tomcat 所在服务器的 ip
9、启动 Nginx 服务器
具体步骤请看 http://www.cnblogs.com/fangwu/p/8167816.html
10、浏览器输入
www.test1.com
www.test2.com