Nginx配置服务的反向代理

Nginx配置服务的反向代理,第1张

Nginx配置服务的反向代理 1 需求

安装两个Tomcat服务,通过nginx反向代理。

本案例中使用两台虚拟机演示。

Nginx安装在192.168.20.101环境中
Tomcat安装到192.168.20.102环境中。端口为8080与9090

2 安装服务环境

上传JDK和Tomcat软件安装包
安装JDK

[root@node2 apps]# ls
apache-tomcat-8.5.61.tar.gz  jdk-8u221-linux-x64.rpm 
[root@node2 apps]# rpm -ivh jdk-8u221-linux-x64.rpm

配置JDK环境变量
先查找jdk安装在哪个目录下面:

[root@node2 apps]# find / -name java #搜索java安装在了什么目录下
/etc/pki/ca-trust/extracted/java
/etc/pki/java
/etc/alternatives/java
/var/lib/alternatives/java
/usr/bin/java
/usr/share/bash-completion/completions/java
/usr/java
/usr/java/jdk1.8.0_221-amd64/bin/java  #安装后目录在/usr/java/
/usr/java/jdk1.8.0_221-amd64/jre/bin/java
[root@node2 apps]# ll /usr/java/
总用量 0
lrwxrwxrwx. 1 root root  16 8月   2 20:13 default -> /usr/java/latest
drwxr-xr-x. 8 root root 258 8月   2 20:13 jdk1.8.0_221-amd64
lrwxrwxrwx. 1 root root  28 8月   2 20:13 latest -> /usr/java/jdk1.8.0_221-amd64

配置环境变量:

[root@node2 apps]# vim /etc/profile
export JAVA_HOME=/usr/java/default
export PATH=$PATH:$JAVA_HOME/bin

然配置的环境变量生效:

[root@node2 apps]# source /etc/profile

测试安装配置是否正确:

[root@node2 apps]# java -version
java version "1.8.0_221"
Java(TM) SE Runtime Environment (build 1.8.0_221-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.221-b11, mixed mode)
[root@node2 apps]# jps  #查看运行的java进程
7701 Jps  #说明配置成功了

安装并配置tomcat

# 解压安装包
[root@node2 apps]# tar -zxvf apache-tomcat-8.5.61.tar.gz -C /opt/
[root@node2 apps]# cd /opt/
[root@node2 opt]# ls
apache-tomcat-8.5.61  apps
[root@node2 opt]# mv apache-tomcat-8.5.61/ tomcat1
[root@node2 opt]# cd tomcat1/bin/
#启动tomcat
[root@node2 bin]# ./startup.sh  

修改index.jsp主页:

[root@node2 bin]# vim ../webapps/ROOT/index.jsp

   192.168.20.102:8080
 


关闭tomcat1,并将tomcat1复制一份

  [root@node2 bin]# ./shutdown.sh
  [root@node2 bin]# cd /opt/
  [root@node2 opt]# ls
  apps  tomcat1
  [root@node2 opt]# cp -r tomcat1/ tomcat2
  [root@node2 opt]# ls
  apps  tomcat1  tomcat2

修改tomcat2的index.jsp主页

[root@node2 opt]# vim tomcat2/webapps/ROOT/index.jsp

   192.168.20.102:9090
 

修改tomcat2的端口号8080改为9090

[root@node2 opt]# vim tomcat2/conf/server.xml
 #8005改为9095,不改的话同时启动两个tomcat抛出异常
......

启动tomcat2,并测试:

[root@node2 opt]# cd tomcat2/bin/
[root@node2 bin]# ./startup.sh 

3 配置Nginx实现服务的反向代理

修改nginx.xml配置文件:

http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  0;
    upstream tomcat.server1{
	    server 192.168.20.102:8080;
    }
    upstream tomcat.server2{
	    server 192.168.20.102:9090;
    }  
    server {
        listen       80;
	    #为虚拟机指定IP或者是域名
        server_name  www.tomcat1.com;
	    #主要配置路由访问信息
        location / {
	        #用于指定访问根目录时,访问虚拟主机的web目录
            proxy_pass  http://tomcat.server1;
	        #在不指定访问具体资源时,默认的展示资源的列表
            index  index.html index.htm;
        }     
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
    #一个Server就是一个虚拟主机
    server {
        listen       80;
	    #为虚拟机指定IP或者是域名
        server_name  www.tomcat2.com;
	    #主要配置路由访问信息
        location / {
	        #用于指定访问根目录时,访问虚拟主机的web目录
            proxy_pass  http://tomcat.server2;
	        #在不指定访问具体资源时,默认的展示资源的列表
            index  index.html index.htm;
        }     
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
   }
}

修改window下的hosts文件:

192.168.20.101 node1 www.bjsxt.cn www.baizhan.cn  www.tomcat1.com www.tomcat2.com

分别访问:www.tomcat1.com www.tomcat2.com进行测试

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4023723.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-10-22
下一篇 2022-10-22

发表评论

登录后才能评论

评论列表(0条)

保存