linux中下载nginx

Nginx是一款高性能的开源Web服务器软件。它可以作为一个HTTP服务器进行网站的发布,也可以作为反向代理服务器进行负载均衡。Nginx以其出色的性能、稳定性和低资源消耗而受到广泛的使用。它的特点包括支持并发连接数高、内存消耗低、事件驱动等,适用于大部分的网站环境。

nginx文件结构

1、全局块:

配置影响nginx全局的指令。一般有运行nginx服务器的用户组,nginx进程pid存放路径,日志存放路径,配置文件引入,允许生成worker process数等。

2、events块:

配置影响nginx服务器或与用户的网络连接。有每个进程的最大连接数,选取哪种事件驱动模型处理连接请求,是否允许同时接受多个网路连接,开启多个网络连接序列化等。

3、http块:

可以嵌套多个server,配置代理,缓存,日志定义等绝大多数功能和第三方模块的配置。如文件引入,mime-type定义,日志自定义,是否使用sendfile传输文件,连接超时时间,单连接请求数等。

4、server块:

配置虚拟主机的相关参数,一个http中可以有多个server。

5、location块:

配置请求的路由,以及各种页面的处理情况。

nginx下载地址:

nginx: download

本次使用 1.20.2 版本

1.下载软件包(本次下载到的是/usr/local/src目录下)

wget https://nginx.org/download/nginx-1.20.2.tar.gz

2.安装依赖项

yum -y install gcc pcre-devel zlib-devel openssl openssl-devel

3.安装nginx

解压

tar -zxvf nginx-1.20.2.tar.gz

进入NG目录

cd ./nginx-1.20.2

配置

./configure --prefix=/usr/local/nginx

编译

make

make install

4.配置systemd方式管理

vim /usr/lib/systemd/system/nginx.service

复制代码
[Unit]
Description=The Nginx HTTP Server
After=network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop
PrivateTmp=true

[Install]
WantedBy=multi-user.target
5.操作

systemctl start nginx.service #(启动nginx服务)

systemctl stop nginx.service #(停止nginx服务)

systemctl enable nginx.service #(设置开机自启动)

systemctl disable nginx.service #(停止开机自启动)

systemctl status nginx.service #(查看服务当前状态)

systemctl restart nginx.service #(重新启动服务)

systemctl list-units --type=service #(查看所有已启动的服务)

6.配置反向代理

nginx反向代理有以下几个主要的优势和用途:

  1. 负载均衡:Nginx可以将客户端的请求分发到多个后端服务器上,以减轻单个服务器的压力,并提高整体的性能和可靠性。

  2. 高可用性和容错:通过使用多个后端服务器,如果某个服务器发生故障或者不可用,Nginx可以自动将请求转发到其他可用的服务器上,确保服务的连续性。

  3. 缓存:Nginx可以缓存后端服务器的响应,减少对后端服务器的请求,提高响应速度,并减轻后端服务器的负载。

  4. 安全性:Nginx可以过滤和拦截恶意请求,以保护后端服务器免受攻击。

通过配置反向代理,可以将Nginx作为一个中间层,提供负载均衡、高可用性和安全性等功能,以满足不同场景下的需求。

配置 /usr/local/nginx/conf/nginx.conf
拓展
nginx负载均衡
复制代码
upstream webset{
​		server 192.168.0.1:8080 weight=1; # 应用服务器1
​		server 192.168.0.1:8088 weight=2; # 应用服务器2
​		server 192.168.0.1:8090 backup; # 热备
​		ip_hash; # 相同ip请求相同服务器
​	}
​	server {
​		listen 80;
​		location / {
​			proxy_pass http://webset;
​		}
​	}
nginx虚拟主机
复制代码
server {
​		listen 80 default_server;
​		server_name _;
​		return 444; # 过滤其他域名的请求,返回444状态码
​	}
​	server {
​		listen 80;
​		server_name www.aaa.com; # www.aaa.com域名
​		location / {
​			proxy_pass http://localhost:8080; # 对应端口号8080
​		}
​	}
​	server {
​		listen 80;
​		server_name www.bbb.com; # www.bbb.com域名
​		location / {
​			proxy_pass http://localhost:8081; # 对应端口号8081
​		}
​	}

如有错误给孩子提醒一下,感谢观看!

相关推荐
mounter6252 小时前
现代 Linux 内核在异构内存与硬件演进下的架构变革:压缩 RAM、CXL 与分布式内存
linux·linux kernel·kernel
YH行业报告分析2 小时前
2026两轴Delta并联机器人深度分析:高速分拣场景下的轻量化自动化升级路径
运维·机器人·自动化
nece0012 小时前
vbox 为虚拟机配置网络
运维·服务器·网络
racerun2 小时前
用于图片上传到服务器
运维·服务器
迅猛龙办公室2 小时前
Python实现PM空气质量提醒
服务器·前端·python
2501_937767162 小时前
别手动上传:小团队内网文件自动归集方案选型与踩坑记录
运维
智恒百亿2 小时前
5090 八卡服务器踩坑实录:架构、多卡通信、PyTorch Distributed 一次说清楚
服务器·pytorch·架构
adinnet20262 小时前
条件路由与状态传递:自动化员工怎么“分情况办事“和“记上下文“
运维·自动化·github
cccccc语言我来了2 小时前
Linux (11) 进程控制
linux·运维·数据库
菜菜的院子3 小时前
WSL2 运行 Ubuntu 26.04 完整 GNOME 桌面(WSLg Wayland)
linux·运维·ubuntu·wsl