1. 安装make

yum -y install gcc automake autoconf libtool make

2. 安装gcc

yum -y install gcc gcc-c++

3. 安装OpenSSL(具体版本根据实际情况更新)

#下载openssl
cd /usr/local/src
wget https://www.openssl.org/source/openssl-1.1.1b.tar.gz
#解压
tar -zxvf openssl-1.1.1b.tar.gz
#安装
cd openssl-1.1.1b
./config && make && make install

4. 安装PCRE库(具体版本根据实际情况更新),是nginx支持rewrite

#下载
cd /usr/local/src
wget https://netix.dl.sourceforge.net/project/pcre/pcre/8.40/pcre-8.40.tar.gz
#解压
tar -zxvf pcre-8.40.tar.gz
#安装
cd pcre-8.40
./configure && make && make install

5. 安装zlib库(具体版本根据实际情况更新)

#下载
cd /usr/local/src
wget http://zlib.net/zlib-1.2.11.tar.gz
#解压
tar -zxvf zlib-1.2.11.tar.gz
#安装
cd zlib-1.2.11
./configure && make && make install

6. 安装nginx(具体版本根据实际情况更新)

#下载
cd /usr/local/src
wget http://nginx.org/download/nginx-1.18.0.tar.gz
#解压
tar -zxvf nginx-1.18.0.tar.gz
#安装
cd nginx-1.18.0
./configure && make && make install

7. 查看安装位置和版本

whereis nginx
#记录安装位置(以/usr/local/nginx为例)
cd /usr/local/nginx/sbin
./nginx -v

8. 启动

/usr/local/nginx/sbin/nginx
#查看启动状态
ps -ef|grep nginx

9. 添加端口开放,默认80端口

#查看防火墙状态(not running为未开启,running为开启中)
firewall-cmd --state
#方式一,直接关闭防火墙
systemctl stop firewalld.service
#方式二,开启80端口并重启防火墙
firewall-cmd --zone=public --add-port=80/tcp --permanent
systemctl restart firewalld.service

10. 浏览器访问

http://192.168.0.100

11. 启动、重启、停止、重新加载/检查/指定配置文件

#启动
/usr/local/nginx/sbin/nginx
#停止
/usr/local/nginx/sbin/nginx -s stop
/usr/local/nginx/sbin/nginx -s quit #强制停止
ps -ef | grep nginx
killall -9 nginx #重启
/usr/local/nginx/sbin/nginx -s reopen #重新载入配置文件
/usr/local/nginx/sbin/nginx -s reload #检查配置文件
/usr/local/nginx/sbin/nginx -t #启动时检查并指定配置文件
/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf

12. 映射静态文件目录

#创建data文件夹
cd /usr/local/nginx/
mkdir data
#创建test.txt
cd data/
touch test.txt
#编辑文件
vi test.txt
#添加映射
cd /usr/local/nginx/conf
vi nginx.conf
#在http下添加配置
#listen 监听的端口
#server_name 服务名称,域名。无域名则配置本机IP
server {
listen 8089;
server_name 192.168.0.100;
location / {
root /usr/local/nginx/data/;
}
}
#重新载入配置文件
/usr/local/nginx/sbin/nginx -s reload
#开放端口
firewall-cmd --zone=public --add-port=8089/tcp --permanent
systemctl restart firewalld.service

浏览器访问:http://192.168.0.100:8089/test.txt

13. Nginx upstream(三种常见)

  如果后端服务器down掉,则自动剔除。

  • 默认轮询
upstream backend {
server 192.168.0.101;
server 192.168.0.102;
}
  • weight,访问比例与权重成正比
upstream backend {
server 192.168.0.101 weight=1;
server 192.168.0.102 weight=2;
}
  • ip_hash,解决session共享问题
upstream backend {
ip_hash;
server 192.168.0.101;
server 192.168.0.102;
}

负载均衡:

#以轮询为例,在http下配置
upstream backend {
server 192.168.0.101;
server 192.168.0.102;
}
server {
listen 80;
server_name 192.168.0.100; location / {
proxy_pass http://backend;
}
}

浏览器访问:http://192.168.0.100

最新文章

  1. nginx代理https站点(亲测)
  2. 报错:emulator: WARNING: ./android/metrics/metrics_reporter_toolbar.cpp:167: Can't upload usage metrics: Error
  3. WebView解析
  4. 洛谷 P2735 电网 Electric Fences Label:计算几何--皮克定理
  5. CodeIgniter 下引入ORM Doctrine
  6. [转]浅谈php web安全
  7. 【英语】Bingo口语笔记(14) - 表示“不愉快”
  8. hive优化之自己主动合并输出的小文件
  9. [Math]Sqrt(x)
  10. 零基Android手机嵌入式开发培训课程
  11. HDU 4333 Revolving Digits 扩张KMP
  12. Unity2D开发小细节
  13. 邪恶改装:TPYBoard制作廉价WIFI干扰器
  14. 原生JS的Ajax
  15. IDEA多个服务打断点 各服务乱窜的问题
  16. POJ1417 True Liars
  17. Struts2中使用HttpServletRequest和HttpServletResponse
  18. Python大数据处理案例
  19. 12款程序员们最爱的Bootstrap模板
  20. C++对C语言的拓展(5)—— 函数重载和函数指针结合

热门文章

  1. 用十一张图讲清楚,当你CRUD时BufferPool中发生了什么!以及BufferPool的优化!
  2. FairyGUI编辑器的和unity里的Obj对应关系
  3. 面试官:连Spring AOP都说不明白,自己走还是我送你?
  4. 如何用FL Studio做电音
  5. jmp使用
  6. 在windows环境下 nginx + .net core 3.1 实现反向代理和负载均衡
  7. 【MMT】ICLR 2020: MMT(Mutual Mean-Teaching)方法,无监督域适应在Person Re-ID上性能再创新高
  8. paddleocr安装笔记
  9. 老猿学5G扫盲贴:中移动的5G计费架构中Nchf'服务化接口以及CHF中的AGF
  10. 老猿学5G扫盲贴:3GPP中的5G计费架构