server { #服務部屬上Container用的是哪個Port listen 80; server_name localhost; client_max_body_size 2000M; client_body_buffer_size 128k; proxy_connect_timeout 5; proxy_send_timeout 1800; proxy_read_timeout 1800; proxy_buffer_size 4k; proxy_buffers 4 32k; proxy_busy_buffers_size 64k; proxy_temp_file_write_size 64k; auth_basic "status"; #開啟gzip gzip on; #低於1kb的資源不壓縮 gzip_min_length 1k; #壓縮級別1-9,越大壓縮率越高,同時消耗cpu資源也越多,建議設置在5左右。 gzip_comp_level 5; #需要壓縮哪些response類型的資源,用空格隔開。不建議壓縮圖片. gzip_types text/plain application/javascript application/x-javascript text/javascript text/xml text/css; #配置禁用gzip條件,支持正規表達式。此處表示ie6及以下不啟用gzip gzip_disable "MSIE [1-6]\."; #是否添加"Vary: Accept-Encoding" response header gzip_vary on; #location / 是指當從外部訪問這個服務的時候,他需要帶什麼路徑 (這邊寫是localhost:7777/) #如果希望是訪問的網址是 localhost:7777/myWeb 就寫成location /myWeb # location /admin { # root /usr/share/nginx/html/admin; # index index.html index.htm; # try_files $uri $uri/ /index.html; # } location / { root /usr/share/nginx/html; index index.html index.htm; try_files $uri $uri/ /index.html; } # 二级目录配置(/subdir) location /admin { alias /usr/share/nginx/html/admin; # 子应用的静态文件目录 index index.html; client_max_body_size 2000M; try_files $uri $uri/ /admin/index.html; } # # 防止二级目录下的静态资源被错误处理 location /admin/ { alias /usr/share/nginx/html/admin/; try_files $uri $uri/ =404; } # # 配置静态资源缓存 # location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg|woff|woff2|ttf|eot)$ { # expires 1y; # add_header Cache-Control "public"; # } # 代理 API 请求到后端服务 location /api/ { proxy_pass http://backend:8085/; # 后端 API 地址 proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; client_max_body_size 2000M; # 如果需要支持 WebSocket,添加以下配置 proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } }