Nginx的基础配置

更新时间:2023-02-22 15:57:53标签:nginx

配置参考

1user root; # 运行用户
2worker_processes auto; # Nginx进程,一般设置为和CPU核数一样
3
4
5events {
6 worker_connections 1024; # 单个后台进程的最大并发数
7}
8
9http {
10 include /etc/nginx/mime.types; # 文件扩展名与类型映射表
11 default_type application/octet-stream; # 默认文件类型
12
13 # 设置日志模式
14 log_format main '$remote_addr - $remote_user [$time_local] "$request" '
15 '$status $body_bytes_sent "$http_referer" '
16 '"$http_user_agent" "$http_x_forwarded_for"';
17
18 sendfile on;
19 server_tokens off;
20
21 keepalive_timeout 65;
22
23 gzip on;
24 gzip_types application/javascript text/css;
25 gzip_min_length 2048;
26
27 map $http_upgrade $connection_upgrade {
28 default upgrade;
29 '' close;
30 }
31
32 add_header Cache-Control no-cache; # 协商缓存
33
34 server {
35 listen 80 default_server;
36 absolute_redirect off;
37 index index.html;
38 root /xxx-dashboard/; # 静态文件所在目录
39
40 error_page 404 = @redirect_to_404; # 定义变量404
41 location @redirect_to_404 {
42 return 302 /404.html; # 404页面重定向302到 /404.html
43 }
44
45 location / {
46 try_files $uri $uri/ /index.html; # 静态资源配置(单页面程序)
47 }
48
49 location /subapp {
50 alias /subapp-dashboard/;
51 try_files $uri $uri/ /subapp/index.html; # 静态资源配置(单页面程序)
52 }
53
54 location /subapp2 {
55 alias /subapp2-dashboard/;
56 try_files $uri $uri/ =404; # 非单页面
57 }
58
59 # 某些低版本nginx需要写成 /api, 结尾没有 /
60 location /api/ {
61 proxy_pass http://localhost:5000/; # 将 /api/* 请求转发至 http://localhost:5000/*
62 proxy_set_header X-Real-IP $remote_addr;
63 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
64 proxy_set_header Host $host;
65 }
66 }
67}

官方文档

https://docs.nginx.com/nginx/admin-guide/web-server/reverse-proxy/