主页 > 开源代码  > 

Nginx配置与常用命令速查手册

Nginx配置与常用命令速查手册
Nginx 配置文件结构

Linux 中 Nginx 的配置文件:

通常位于 /etc/nginx/nginx.conf 或 /usr/local/nginx/conf/nginx.conf。

Nginx 采用模块化设计,主要分为以下部分:

1. 全局块

配置与服务器整体相关的参数,如工作进程数、日志路径等。


2. Events 块

配置与网络连接相关的参数。

events { worker_connections 1024; # 每个工作进程的最大连接数 }
3. Http 块

配置 HTTP 服务器相关的参数,如虚拟主机、反向代理、负载均衡等。包括多个 server 块。

<NGINX> http { include mime.types; # 包含 MIME 类型配置文件 default_type application/octet-stream; # 默认文件类型 access_log /var/log/nginx/access.log; # 访问日志路径 # 定义一个虚拟主机 server { listen 80; # 监听端口 server_name example ; # 域名 location / { root /var/ /html; # 静态资源路径 index index.html; # 默认首页文件 } } }

4. Server 块

定义虚拟主机(每个 server 块对应一个网站),如域名、端口、根目录等。

server { # 使用 SSL 证书启用 HTTPS: listen 443 ssl; ssl_certificate /etc/nginx/ssl/secure.crt; # SSL 证书 ssl_certificate_key /etc/nginx/ssl/secure.key; # SSL 证书密钥 listen 80; // 监听端口 server_name example ; # 域名 location / { root /var/ /html; # 网站根目录 index index.html; # 默认首页 } }

将静态文件放到 /var/ /html 目录,访问 http://example 即可。


5. Location 块

定义请求 URL 路径的匹配规则和处理逻辑。

location /images/ { root /var/ ; # 访问 /images/ 时,文件路径为 /var/ /images/ }
常用配置示例 1. 静态资源服务 server { listen 80; server_name example ; location /static/ { root /var/ ; } }

2. 反向代理 server { listen 8081; server_name localhost; location / { proxy_pass http://localhost:8080; # 将请求转发到后端服务器 proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } }

proxy_pass 指令将浏览器请求 localhost:8081 转发到 http://localhost:8080

浏览器输入的是 localhost:8081 ,后台实际访问  http://localhost:8080


3. 负载均衡 upstream backend { server 192.168.1.101; server 192.168.1.102; } server { listen 80; server_name example ; location / { proxy_pass http://backend; # 将请求转发到后端服务器 } } 4. HTTPS 配置 server { listen 443 ssl; server_name example ; ssl_certificate /etc/nginx/ssl/example .crt; ssl_certificate_key /etc/nginx/ssl/example .key; location / { root /var/ /html; index index.html; } } 5. URL 重写 location /user/ { rewrite ^/user/(.*)$ /profile?user=$1 break; }
一、下载Nginx

 Nginx 作用: 

发布静态网站实现反向代理实现负载均衡缓存加速HTTPS 配置

负载均衡:当同时有多个用户访问我们服务器的时候,为了减少服务器的压力,我们需要将用户引入服务器集群中较轻压力的服务器,分担较重压力服务器的负担。

反向代理:反向代理就像一个 “中间人”,它站在 客户端 和 后端服务器 之间,负责接收客户端的请求,然后将请求转发给后端服务器,并将服务器的响应返回给客户端。

官网: nginx.org/

正向代理

反向代理

为客户端服务(隐藏客户端)

为服务器服务(隐藏服务器)

客户端知道代理的存在

客户端不知道代理的存在

常用于访问外部资源(如 VPN)

常用于负载均衡和缓存加速

反向代理:客户端不知道后端服务器是谁,反向代理隐藏了服务器。正向代理:服务器不知道客户端是谁,正向代理隐藏了客户端(比如通过 VPN 访问国外社交网站)。

二、Nginx 注意事项

注意:开发中遇到的一个小坑, nginx 用命令重新加载有时候执行 nginx -s reload会不生效,会启动多个后台进程,遇到此情况用任务管理器打开关掉重新启动就好。


三、Nginx 常用命令 1、启动 start nginx 2、重新加载 nginx -s reload 3、停止 nginx -s stop 4、指定配置文件启动 nginx -c /path/to/nginx.conf 5、查看 Nginx 进程状态 ps aux | grep nginx 6、测试修改配置文件后语法是否正确 nginx -t

如果 Nginx 是通过 systemd 管理的,可以使用以下命令替代:

启动:systemctl start nginx 停止:systemctl stop nginx 重新加载:systemctl reload nginx 查看状态:systemctl status nginx

技术水平有限,如有错误,欢迎指正!

标签:

Nginx配置与常用命令速查手册由讯客互联开源代码栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“Nginx配置与常用命令速查手册