Linux(CentOS7)安装Nginx(附简单配置)
2024-09-08 00:45:41
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. 浏览器访问
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
最新文章
- nginx代理https站点(亲测)
- 报错:emulator: WARNING: ./android/metrics/metrics_reporter_toolbar.cpp:167: Can't upload usage metrics: Error
- WebView解析
- 洛谷 P2735 电网 Electric Fences Label:计算几何--皮克定理
- CodeIgniter 下引入ORM Doctrine
- [转]浅谈php web安全
- 【英语】Bingo口语笔记(14) - 表示“不愉快”
- hive优化之自己主动合并输出的小文件
- [Math]Sqrt(x)
- 零基Android手机嵌入式开发培训课程
- HDU 4333 Revolving Digits 扩张KMP
- Unity2D开发小细节
- 邪恶改装:TPYBoard制作廉价WIFI干扰器
- 原生JS的Ajax
- IDEA多个服务打断点 各服务乱窜的问题
- POJ1417 True Liars
- Struts2中使用HttpServletRequest和HttpServletResponse
- Python大数据处理案例
- 12款程序员们最爱的Bootstrap模板
- C++对C语言的拓展(5)—— 函数重载和函数指针结合
热门文章
- 用十一张图讲清楚,当你CRUD时BufferPool中发生了什么!以及BufferPool的优化!
- FairyGUI编辑器的和unity里的Obj对应关系
- 面试官:连Spring AOP都说不明白,自己走还是我送你?
- 如何用FL Studio做电音
- jmp使用
- 在windows环境下 nginx + .net core 3.1 实现反向代理和负载均衡
- 【MMT】ICLR 2020: MMT(Mutual Mean-Teaching)方法,无监督域适应在Person Re-ID上性能再创新高
- paddleocr安装笔记
- 老猿学5G扫盲贴:中移动的5G计费架构中Nchf'服务化接口以及CHF中的AGF
- 老猿学5G扫盲贴:3GPP中的5G计费架构