Linux下安装nginx实现伪分布

1.安装 Nginx 的编译环境 gcc

yum install gcc-c++

2.nginx 的 http 模块使用 pcre 解析正则表达式,所以安装 perl 兼容的正则表达式库

yum install -y pcre pcre-devel

3.nginx 使用 zlib 对 http 包的内容进行 gzip

yum install -y zlib zlib-devel

4.nginx 不仅支持 http 协议,还支持 https(即在 ssl 协议上传输 http),如果使用了 https ,需要安装 OpenSSL 库

yum install -y openssl openssl-devel

5.下载并解压包

// 创建一个文件夹
cd /usr/local
mkdir nginx
cd nginx
// 下载tar包
wget http://nginx.org/download/nginx-1.13.7.tar.gz
tar -zxvf nginx-1.13.7.tar.gz

进入nginx-1.13.7下执行命令:

./configure

使用默认配置时,nginx 被安装到 /usr/local/nginx 下

6.执行命令安装

// 执行make命令
make
// 执行make install命令
make install

7.配置一下环境变量方便启动和reload

vim /etc/profile

将它添进去

export NGINX_HOME=/usr/local/nginx
export PATH=$PATH:$NGINX_HOME/sbin

重新编译profile

source /etc/profile

8.nginx启动

// 进入nginx安装目录
cd sbin
sudo ./nginx

9.访问nginx

nginx默认是用80端口,有可能启动的时候起不来,提示端口占用,可以用

lsof -i:80

查看哪个应用占用80,如果有就kill掉即可,如果没有装lsof命令,执行以下命令,ok

yum install lsof

实现伪分布:

1.因为我是springboot项目,没有用外置的tomcat,所以准备好两个jar包即可(两个jar包除了端口不同,其他均一样,然后启动这两个jar包即可<就使用java -jar的方式启动>)

2.在nginx目录下的conf下有个叫nginx.conf的配置文件

什么都不需要懂,只需要在http的花括号中添加:

    #设定负载均衡的服务器列表
    upstream mystory {
        #weigth参数表示权值,权值越高被分配到的几率越大
        #本机上的Squid开启3128端口
        server 39.106.39.2:8082 weight=5;
        server 39.106.39.2:8081  weight=5;
    }

其中mystory为自定义的名字

然后在http大括号中的server下的location中添加proxy_pass http://mystory;即可

这里的mystory和上面upstream的名字对应即可,ok最简单的负载配置完成,因为nginx支持热部署,只需要执行命令:

nginx -s reload

即可!

其中涉及到的参数,等我完全搞明白了,再拿出来吧~

原文地址:https://www.cnblogs.com/zhangjianbing/p/9178405.html