default.conf 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. upstream api_upstream {
  2. server web:20000; # 使用容器名
  3. }
  4. # 定义 DNS 解析器
  5. resolver 8.8.8.8 8.8.4.4 valid=300s;
  6. resolver_timeout 10s;
  7. server {
  8. listen 80;
  9. server_name 192.168.0.198;
  10. location ~ ^/api/(.*)$ {
  11. proxy_pass http://api_upstream/$1;
  12. proxy_set_header Host $host;
  13. proxy_set_header X-Real-IP $remote_addr;
  14. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  15. proxy_set_header X-Forwarded-Proto $scheme;
  16. }
  17. }
  18. server {
  19. listen 80;
  20. server_name www.mhaya.one;
  21. # 转发图片请求到 S3 存储桶
  22. location /avatar/ {
  23. proxy_pass http://mhaya-img.s3.ap-southeast-1.amazonaws.com/avatar/;
  24. proxy_set_header Host mhaya-img.s3.ap-southeast-1.amazonaws.com;
  25. proxy_set_header X-Real-IP $remote_addr;
  26. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  27. proxy_set_header X-Forwarded-Proto $scheme;
  28. # 设置缓存控制头
  29. proxy_cache_bypass $http_pragma;
  30. proxy_no_cache $http_pragma;
  31. proxy_cache_valid 200 302 10m;
  32. proxy_cache_valid 404 1m;
  33. }
  34. location / {
  35. root /home/web-mobile;
  36. try_files $uri $uri/ /index.html;
  37. }
  38. gzip on; # 启用gzip压缩
  39. gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript; # 指定要压缩的MIME类型
  40. gzip_comp_level 6; # 压缩级别(1-9),数字越大压缩率越高,但CPU使用率也越高
  41. gzip_min_length 256; # 只有当响应大小大于这个值时才进行压缩
  42. gzip_proxied any; # 代理请求也进行压缩
  43. gzip_vary on; # 在响应头中添加"Vary: Accept-Encoding"以确保下游缓存正确处理压缩内容
  44. gzip_buffers 32 16k; # 设置缓冲区大小
  45. gzip_http_version 1.1; # 设置HTTP版本
  46. }