科技 > 操作系统 > Windows

Nginx基础安装+配置文件过程

16人参与 2025-04-24 Windows

一.nginx基础

1.基础知识点

nginx 是一个 轻量级、高性能的web服务应用,可以作为 http 服务器、虚拟主机、反向代理服务器、负载均衡器,以及支持 tcp/udp 的通用代理服务器。

特点:稳定性高、不容易宕机;开源免费;内存/cpu资源消耗较少;并发能力高,至少能同时处理2-3万并发,最多能支持5万并发

2.异步非阻塞机制

nginx 的异步非阻塞机制通过 事件驱动模型 和 i/o 多路复用技术 实现,使得单个 worker 进程能够高效处理成千上万的并发连接。

1. worker进程初始化,监听指定的端口(如80或443)。

2. 当有新的连接请求到达时,worker进程接受该连接,并将其注册到事件循环中。

3. 事件循环使用i/o多路复用机制(epoll)来监视所有注册的文件描述符(即连接)。

4. 当某个连接上有可读或可写事件发生时,事件循环会触发相应的回调函数来处理该事件。

5. 在处理事件时,如果需要进行i/o操作(如读取请求数据或发送响应数据),这些操作会被异步执行,不会阻塞进程。

6. 处理完一个事件后,事件循环继续检查其他事件,循环往复。

二.nginx安装

2.1安装nginx3种方式

1.包管理工具安装(yum/apt)

2.本地包安装(rpm/dpkg)

3.源码编译安装

原理:从nginx官网下载源代码,手动编译并安装。

特点:

3.1 源码编译安装nginx流程(ubuntu)

1. 更新apt源、下载lrzsz工具

apt update
apt install -y lrzsz 用于本地主机和服务器相互传输文件

2.安装依赖包

ubuntu: apt -y install libpcre3-dev zlib1g-dev libssl-dev build-essential
centos: yum -y install gcc pcre-devel openssl-devel zlib-devel openssl openssl-devel

3.创建运行用户

nginx 服务程序默认以 nobody 身份运行:useradd -m -s /sbin/nologin nginx

4.编译安装nginx

./configure --prefix=/usr/local/nginx \  #指定了nginx的安装目录。在这种情况下,它将安装在 
                                          /usr/local/nginx 目录下。
--user=nginx --group=nginx \          #指定了运行nginx进程的用户和组。在这种情况下,它将是用户 
                                      和组 nginx。
--with-http_gzip_static_module \       #启用了支持使用 .gz 扩展名提供预压缩文件的功能。
--with-http_flv_module \
--with-http_ssl_module \                #启用了对http连接的ssl/tls加密支持。
--with-http_realip_module \
--with-http_v2_module \                 #启用了对http2.0协议的支持
--with-http_sub_module \               
--with-http_mp4_module \              
--with-http_stub_status_module \        #启用了 stub_status 模块,提供了访问nginx状态信息的方 
                                       法。
--with-pcre \                          #启用了对perl compatible regular expressions(pcre) 
                                       库的支持。
--with-stream \                        #启用了对tcp/udp代理模块的支持。
--with-stream_ssl_module \             #启用了对tcp/udp连接的ssl/tls加密支持。
--with-stream_realip_module            #允许nginx从proxy协议头部获取客户端的真实ip地址。

make -j 2(cpu数量决定)

make -install (安装)

注意:

1.让系统识别nginx操作命令,将nginx的可执行文件做上软链接

2.更改nginx文件夹下的属主属组

chown -r nginx.nginx /usr/local/nginx

5.检查、启动、重启、停止 nginx服务

1.检查nginx配置文件:/usr/local/nginx/conf/nginx_conf

nginx -t 检查配置文件是否有语法错误

2.启动nginx服务

3.停止nginx服务

4.重载nginx服务

5.日志分割,重新打开日志文件

nginx 存放日志文件的位置: /usr/local/nginx/logs

生成存放成功日志、错误日志的空文件:kill -usr1 $(cat /usr/local/nginx/logs/nginx.pid)

6.nginx如何前台启动

3.2nginx版本平滑升级

kill -usr2 <pid号>

注意:升级完成后要使用绝对路径启动服务,否则升级可能会报错

3.3添加 nginx 系统服务管理

因为编译安装没有service文件,如果想要系统服务统一管理systemed,需要编写service文件。

service 文件

[unit]
description=nginx
after=network.target

[service]
type=forking
pidfile=/usr/local/nginx/logs/nginx.pid
execstart=/usr/local/nginx/sbin/nginx
execreload=/bin/kill -s hup $mainpid
execstop=/bin/kill -s quit $mainpid
privatetmp=true

[install]
wantedby=multi-user.target

三.nginx进程

以处理 http 请求为例:

1. 核心优势

nginx配置文件的路径: /usr/local/nginx/conf/nginx_conf

全局块:全局配置,对全局生效;

注意:http模块中还可以第三方模块的配置

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。

(0)
打赏 微信扫一扫 微信扫一扫

您想发表意见!!点此发布评论

推荐阅读

Windows Server环境下使用Nginx部署Flask应用的全过程

04-24

阻止系统安装安全补丁 Win11空文件夹inetpub问题临时解决办法

04-24

Win11任务栏中的名称标签如何显示或隐藏?

04-24

存档应用是什么? Win11存档应用功能使用指南

04-24

如何提升系统安全性? Win11智能应用控制工作原理和开启教程

04-24

怎么打开运行窗口? 轻松调出Win11运行对话框的6种方法

04-24

猜你喜欢

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论