ar.upload.ming.conf 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. server
  2. {
  3. add_header 'Access-Control-Allow-Methods' 'GET,OPTIONS,PUT,DELETE,PATCH' always;
  4. add_header 'Access-Control-Allow-Credentials' 'true' always;
  5. add_header 'Access-Control-Allow-Origin' '*' always;
  6. add_header 'Access-Control-Allow-Headers' 'Authorization,DNT,User-Agent,Keep-Alive,Content-Type,accept,origin,X-Requested-With,UPLOAD-SERVER-TOKEN,UPLOAD-SERVER-USER,UPLOAD-SERVER-DATE,UPLOAD-SERVER-NOTIFY-URL,UPLOAD-SERVER-ACTION,UPLOAD-SERVER-LOCAL-PATH' always;
  7. if ($request_method = OPTIONS ) { return 200; }
  8. listen 80;
  9. #listen [::]:80;
  10. server_name ar.upload.ming;
  11. index index.html index.htm index.php;
  12. root /Volumes/HDD/workshop/old/ar.upload.ming;
  13. client_max_body_size 20m;
  14. client_body_buffer_size 512k;
  15. proxy_set_header Host $host;
  16. proxy_set_header X-Real-IP $remote_addr;
  17. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  18. proxy_set_header REMOTE_ADD $remote_addr;
  19. location = /favicon.ico {
  20. log_not_found off;
  21. access_log off;
  22. }
  23. location = /robots.txt {
  24. allow all;
  25. log_not_found off;
  26. access_log off;
  27. }
  28. include ar_upload_img_filter.conf;
  29. include none.conf;
  30. #error_page 404 /404.html;
  31. include enable-php.conf;
  32. location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {
  33. expires 30d;
  34. }
  35. location ~ .*\.(js|css)?$ {
  36. expires 12h;
  37. }
  38. # 上传path配置
  39. location /upload {
  40. if ($request_method != POST) {
  41. return 405;
  42. }
  43. #权限控制
  44. access_by_lua_file '/path/upload-server/auth.lua';
  45. # 转到后台处理URL
  46. upload_pass @python;
  47. client_body_in_file_only on;
  48. # 临时保存路径
  49. # 可以使用散列
  50. upload_store /path/ar.upload.ming/tmp;
  51. # 上传文件的权限,rw表示读写 r只读
  52. upload_store_access user:rw;
  53. # 这里写入http报头,pass到后台页面后能获取这里set的报头字段
  54. upload_set_form_field "${upload_field_name}_name" $upload_file_name;
  55. upload_set_form_field "${upload_field_name}_content_type" $upload_content_type;
  56. upload_set_form_field "${upload_field_name}_path" $upload_tmp_path;
  57. # Upload模块自动生成的一些信息,如文件大小与文件md5值
  58. upload_aggregate_form_field "${upload_field_name}_md5" $upload_file_md5;
  59. upload_aggregate_form_field "${upload_field_name}_size" $upload_file_size;
  60. # 允许的字段,允许全部可以 "^.*$"
  61. upload_pass_form_field "^.*$";
  62. # 每秒字节速度控制,0表示不受控制,默认0
  63. upload_limit_rate 0;
  64. # 如果pass页面是以下状态码,就删除此次上传的临时文件
  65. upload_cleanup 400 404 499 500-505;
  66. }
  67. location @python {
  68. proxy_pass http://127.0.0.1:8000;
  69. #return 200; # 如果不需要后端程序处理,直接返回200即可
  70. }
  71. location /action {
  72.         #本地端口号
  73. proxy_pass http://127.0.0.1:8000;
  74.     }
  75. access_log off;
  76. }