一,什么是正向代理?
正向代理就是代理,类似VPN,用户通过VPN去访问内网的网站。代理就是局域网通过代理服务器可以访问Interent。
二,什么是反向代理?
反向代理,顾名思义就是跟代理相反,比如用户访问百度,同时会有很多用户去访问百度的网站,百度通过Nginx去把这些用户分流到不同的Tomcat
三,反向代理实战演示
通过Nginx配置两个Tomcat,两个Tomcat端口不同,可以使两个域名指向同⼀台nginx服务器,⽤⼾访问不同的域名显⽰不同的⽹⻚内容。
第一步 启动两个Tomcat
1.首先要安装jdk环境
将jdk解压并重新命名
tar -zxvf jdk-8u321-linux-x64.tar.gz -C /usr/local/
cd /usr/local/
mv jdk1.8.0_321 jdk
配置环境变量
vi /etc/profile
把最后修改为
export JAVA_HOME=/usr/local/jdk
export PATH=$PATH:$JAVA_HOME/bin
esc退出编辑模式,输入:wq! 保存成功后,刷新环境变量
source /etc/profile
检测是否成功:
[root@bigdata ~]# java -version
java version "1.8.0_321"
Java(TM) SE Runtime Environment (build 1.8.0_321-b07)
Java HotSpot(TM) 64-Bit Server VM (build 25.321-b07, mixed mode)
2.安装两个Tomcat
解压Tomcat
tar -zxvf apache-tomcat-8.5.87.tar.gz -C /usr/local
重命名Tomcat 1
cd /usr/local/
mv apache-tomcat-8.5.87 tomcat1
复制并重命名为Tomcat 2
cp -r tomcat1 tomcat2
由于启动第二台的时候,会出现端口被占用的问题,所以要用notepad++修改tomcat2的端口
途径如下在/--usr--local--tomcat2--conf--server.xml
8005改为8006
8080改为8081
(记得左上角保存/ctrl s)
3.开始启动
tomcat1
cd /usr/local/tomcat1/bin
./startup.sh
tomcat2
/usr/local/tomcat2/bin
./startup.sh
访问(ip+端口)去测试两个tomcat是否能出来
第二步 修改Nginx配置文件
1.tomcat1配置关键代码如下
upstream tomcat1 {
server 192.168.195.128:8080;
}
server {
listen 80;
server_name www.zpzp.com;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
proxy_pass http://tomcat1;
index index.html index.htm;
}
}
2.tomcat2配置关键代码如下
upstream tomcat2 {
server 192.168.195.128:8081;
}
server {
listen 80;
server_name www.oaoa.com;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
proxy_pass http://tomcat2;
index index.html index.htm;
}
}
3.重新加载配置文件
nginx -s reload
4.修改hosts文件
途径:C:\Windows\System32\drivers\etc
最后加入
192.168.195.128 www.oaoa.com
192.168.195.128 www.zpzp.com
5.将两个tomcat文件修改名字
每一个tomcat的webapps--ROOT--index.jsp
<div id="asf-box">
<hl>任意名字</hl>
</div>
(大概在47行左右)
6.重启一下两台tomcat
先确认是不是在tomcat里(pwd查看当前路径)
./shutdown.sh-----关闭
./stareup.sh------开启
再开启一个窗口
cd /usr/local/tomcat2/bin----如果刚刚重启的是2就开1
./shutdown.sh
./stareup.sh