一.安装Nginx

1.下载Nginx的压缩包

可以通过官网进行下载,地址点击下载。选择最新的版本进行下载。

wget -c https://nginx.org/download/nginx-1.19.7.tar.gz

2.安装Nginx所需依赖环境

1) 安装gcc
yum install gcc-c++
2) 安装PCRE pcre-devel
yum install -y pcre pcre-devel
3) 安装zlib
yum install -y zlib zlib-devel
4) 安装Open SSL
yum install -y openssl openssl-devel

3. 安装Nginx并运行

1) 解压Nginx压缩包
tar -zxvf nginx-1.19.7.tar.gz
2) 执行配置文件初始化

进入解压后nginx所在目录,执行初始化

cd nginx-1.19.7/
./configure
如果需要开始https支持,这里请不要直接执行./configure,即不要直接执行该脚本,而是在该脚本后面加上SSL模块,请执行如下命令替代 ./confingure
./configure --with-http_ssl_module
3) 编译安装Nginx

在当前目录下执行

make install

执行成功后,Nginx默认安装到/usr/local/目录下

4) 启动Nginx

进入/usr/local/nginx/sbin目录,输入./nginx即可启动nginx

./nginx

关闭Nginx

./nginx -s quit 或者 ./nginx -s stop

重启Nginx

./nginx -s reload
5) 访问Nginx 服务器

在浏览器请求http://127.0.0.1 如果Nginx启动成功会显示如下
image
如果页面无法访问,可以查看80端口是否被防火墙拦截,没有放开。

firewall-cmd --list-ports #查看开放的端口
firewall-cmd --zone=public --add-port=80/tcp --permanent #将80端口放开
firewall-cmd --reload # 重启防火墙,才能生效

再次请求http://127.0.0.1 即可显示Nginx启动页面

二. 安装Tomcat

1. 下载Tomcat安装包

由于我部署的springboot 2.3.5 版本的web项目,所以使用tomcat9版本
同样可以通过Tomcat官网,找到下载地址点击下载

wget https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-9/v9.0.43/bin/apache-tomcat-9.0.43.tar.gz

2. 解压Tomcat安装包

tar -zxvf apache-tomcat-9.0.43.tar.gz

3. 复制两个Tomcat

因为要使用简单负载均衡,所以复制两个同样tomcat

mv apache-tomcat-9.0.43 apache-tomcat-8081 #重命名
cp -rf  apache-tomcat-8081 apache-tomcat-8082 #复制相同Tomcat

4. 配置Tomcat

由于只有一台机器,所以配置两个Tomcat为不同的端口。
修改Tomcat配置文件

cd apache-tomcat-8081/conf #进入配置文件所在目录
vi server.xml #修改配置文件

主要修改Tomcat的端口

    <Server port="8015" shutdown="SHUTDOWN">
    <Connector port="8081" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
    <!-- A "Connector" using the shared thread pool-->
    
    <Connector executor="tomcatThreadPool"
               port="8081" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />

另外一个Tomcat同理,修改servier端口为8016,http端口为8082就行

5.启动Tomcat

分别进入两个Tomcat的bin目录

cd apache-tomcat-8081/bin
./startup.sh | tail -f ../logs/catalina.out #启动Tomcat 并输出日志
ps -ef| grep 'tomcat' #查看进程

浏览器访问http://127.0.0.1:8081 显示Tomcat欢迎页面就表示启动成功。如果无法显示回看Nginx启动时,开放端口的方法。

上传web项目到服务器Tomcat

1. maven 编译打包

mvn clean install

2.上传war包

使用xftp分别上传到两个tomcat的/webapp目录下

3.去掉访问时的项目名

cd apache-tomcat-8081/conf #进入配置文件所在目录
vi server.xml #修改配置文件

配置Host节点下的Context标签,path="",docBase指向webapp下的项目war的名称即可。如下

    <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">
       <Context path="" docBase="nirvana-admin-0.0.1-SNAPSHOT" reloadable="true" />
    </Host>

4. 启动项目

cd apache-tomcat-8081/bin
./shutdown.sh #关闭tomcat服务
./startup.sh | tail -f ../logs/catalina.out #启动Tomcat 并输出日志

日志输出:

org.apache.catalina.startup.Catalina.start Server startup in [32403] milliseconds

表示启动成功。

配置Nginx反向代理+负载均衡

修改Nginx的nginx.conf配置文件

cd /usr/local/nginx/conf
vi nginx.conf
    #在http节点下增加upstream,后面名称随意,注意一定不要带“_”下滑线,否则Tomcat启动报错。配置两个服务地址,用于负载均衡。
    http {
        upstream tomcatServer{
            server localhost:8081;
            server localhost:8082;
        }
    }
    # 在location节点下增加反向代理proxy_pass,指向upstream的tomcatServer
    location / {
        root   html;
        index  index.html index.htm;
        proxy_pass http://tomcatServer;
    }

配置完成后,重启Nginx

cd /usr/local/nginx/sbin
./nginx -s reload

启动完成后,即可通过http://127.0.0.1 访问到Tomcat所部署的web项目。


非典型程序猿
24 声望0 粉丝