proxy_pc_upload_ppvod.conf 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. upstream doukui_pc_server_http {
  2. server 160.116.208.62:8001;
  3. }
  4. # 这个最好要部署在ppvod服务器上,带宽决定的.
  5. server {
  6. listen 80;
  7. #多个域名用空格分割,第一个为默认
  8. server_name pcs1.py163.xyz;
  9. access_log /var/log/nginx/pcs1.py163.xyz.access.log;
  10. error_log /var/log/nginx/pcs1.py163.xyz.error.log;
  11. client_max_body_size 20M;
  12. client_body_buffer_size 512k;
  13. # 防止目录浏览
  14. autoindex off;
  15. proxy_read_timeout 600;
  16. proxy_buffering off;
  17. # proxy_set_header Host $host;
  18. proxy_set_header X-Real-IP $remote_addr;
  19. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  20. proxy_set_header REMOTE_ADD $remote_addr;
  21. location / {
  22. # 跨域
  23. set $cors_credentials '';
  24. set $cors_content_type '';
  25. set $cors_content_length '';
  26. if ($http_origin ~ '.+') {
  27. set $cors_credentials 'true';
  28. }
  29. if ($request_method = OPTIONS) {
  30. set $cors_content_type 'text/plain';
  31. set $cors_content_length '0';
  32. }
  33. add_header Access-Control-Allow-Origin $http_origin always;
  34. add_header Access-Control-Allow-Credentials $cors_credentials always;
  35. add_header Access-Control-Allow-Methods $http_access_control_request_method always;
  36. add_header Access-Control-Allow-Headers $http_access_control_request_headers always;
  37. add_header Content-Type $cors_content_type;
  38. add_header Content-Length $cors_content_length;
  39. if ($request_method = OPTIONS) {
  40. return 204;
  41. }
  42. rewrite ^/(.*) /web/$1 break;
  43. proxy_set_header Host $host;
  44. proxy_set_header X-Real-IP $remote_addr;
  45. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  46. proxy_set_header REMOTE_ADD $remote_addr;
  47. proxy_set_header Upgrade $http_upgrade;
  48. proxy_pass http://doukui_pc_server_http; #后端api容器地址
  49. proxy_redirect off;
  50. }
  51. location = /uploads {
  52. # 不需要跨域,内部自带
  53. # 鉴权,返回200才能继续,否则中断
  54. auth_request /auth;
  55. proxy_request_buffering off;
  56. # 这里填写上传密钥.
  57. set $my_query $query_string&uploadkey=y43T4EsuX3UQG;
  58. #add_header X-debug-message $my_query;
  59. proxy_pass http://127.0.0.1:2000/uploads?$is_args$my_query;
  60. proxy_redirect off;
  61. #track_uploads proxied 30s;
  62. }
  63. location = /auth {
  64. internal;
  65. #rewrite ^ /auth.php$arg_test break;
  66. set $query '';
  67. if ($request_uri ~* "[^\?]+\?(.*)$") {
  68. set $query $1;
  69. }
  70. proxy_pass http://doukui_pc_server_http/web/up/auth?$query; # 只能填写ip
  71. proxy_pass_request_body off;
  72. proxy_set_header Content-Length "";
  73. proxy_set_header X-Original-URI $request_uri;
  74. }
  75. }