From a06b8f2ff7e4de3455acbdd1be9f9cc58e4e4d49 Mon Sep 17 00:00:00 2001 From: aaron <> Date: Wed, 12 Mar 2025 09:06:30 +0800 Subject: [PATCH] update --- nginx.conf | 95 +++++++++++++++++++++++++++++++++--------------------- 1 file changed, 58 insertions(+), 37 deletions(-) diff --git a/nginx.conf b/nginx.conf index 05c9331..4c0c54e 100644 --- a/nginx.conf +++ b/nginx.conf @@ -1,43 +1,64 @@ -server { - listen 80; - server_name localhost; +# 移除 user 指令,因为我们以非 root 用户运行 +worker_processes auto; +pid /var/run/nginx.pid; + +events { + worker_connections 1024; +} + +http { + include /etc/nginx/mime.types; + default_type application/octet-stream; + + log_format main '$remote_addr - $remote_user [$time_local] "$request" ' + '$status $body_bytes_sent "$http_referer" ' + '"$http_user_agent" "$http_x_forwarded_for"'; + + access_log /var/log/nginx/access.log main; + error_log /var/log/nginx/error.log warn; + + sendfile on; + keepalive_timeout 65; + gzip on; + + server { + listen 80; + server_name localhost; + + # 添加 gzip 压缩 + gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript; + + # 设置客户端最大body大小 + client_max_body_size 20M; - # 开启gzip - gzip on; - gzip_min_length 1k; - gzip_comp_level 9; - gzip_types text/plain text/css text/javascript application/json application/javascript application/x-javascript application/xml; - gzip_vary on; - - # 禁用缓存,解决前端缓存问题 - add_header Cache-Control "no-store, no-cache, must-revalidate, proxy-revalidate, max-age=0"; - add_header Pragma "no-cache"; - add_header Expires "0"; - - location / { root /usr/share/nginx/html; - index index.html index.htm; - # 处理单页应用路由 - try_files $uri $uri/ /index.html; - } + index index.html; - # 缓存静态资源,但排除 JavaScript 文件 - location ~* \.(jpg|jpeg|png|gif|ico|css)$ { - root /usr/share/nginx/html; - expires 1d; - } - - # JavaScript 文件不缓存 - location ~* \.js$ { - root /usr/share/nginx/html; - add_header Cache-Control "no-store, no-cache, must-revalidate, proxy-revalidate, max-age=0"; - add_header Pragma "no-cache"; - add_header Expires "0"; - } + # 支持 history 路由模式 + location / { + try_files $uri $uri/ /index.html; + add_header Cache-Control "no-cache, no-store, must-revalidate"; + } - # 错误页面 - error_page 500 502 503 504 /50x.html; - location = /50x.html { - root /usr/share/nginx/html; + # 缓存静态资源 + location /assets { + expires 1y; + add_header Cache-Control "public, no-transform"; + access_log off; + } + + # 禁止访问 . 文件 + location ~ /\. { + deny all; + access_log off; + log_not_found off; + } + + # 错误页面配置 + error_page 404 /index.html; + error_page 500 502 503 504 /50x.html; + location = /50x.html { + root /usr/share/nginx/html; + } } } \ No newline at end of file