nginx.conf 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. events {
  2. worker_connections 1024;
  3. }
  4. http {
  5. server {
  6. listen 9000;
  7. server_name _;
  8. # 定义你的 API Key
  9. # 客户端请求时需携带 Header: Authorization: Bearer YOUR_SECRET_KEY
  10. # 或者 Query Param: ?api_key=YOUR_SECRET_KEY
  11. client_max_body_size 300M; # 根据你的实际最大文件调整,比如 200M
  12. location /mineru/ {
  13. # --- 方式 A: 基于 Header 鉴权 (推荐) ---
  14. if ($http_authorization != "Bearer sk_dev_aC_2gg8BS5ImUScrpaHIKS5x6gdLO9Js_ba854894") {
  15. return 401 '{"error": "Unauthorized"}';
  16. }
  17. # --- 方式 B: 基于 Query Param 鉴权 (如果不方便改 Header) ---
  18. # if ($arg_api_key != "YOUR_SECRET_KEY") {
  19. # return 401 '{"error": "Unauthorized"}';
  20. # }
  21. ## 关键:proxy_pass 末尾的斜杠会替换掉 location 中匹配的 /mineru/
  22. proxy_pass http://mineru-api:8000/;
  23. proxy_set_header Host $host;
  24. proxy_set_header X-Real-IP $remote_addr;
  25. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  26. # 针对大文件上传解析的优化
  27. #client_max_body_size 50M;
  28. proxy_read_timeout 300s;
  29. proxy_send_timeout 300s;
  30. }
  31. }
  32. }