Skip to content
Browse files

Added example configuration for unzipping archives on the fly

  • Loading branch information...
1 parent 1059c24 commit ddfd4c1fbf2bf9e6fd395b1387a77370949479d9 @vkholodkov committed Sep 24, 2008
Showing with 56 additions and 0 deletions.
  1. +56 −0 nginx-unzip.conf
View
56 nginx-unzip.conf
@@ -0,0 +1,56 @@
+
+worker_processes 20;
+
+error_log logs/error.log notice;
+
+working_directory /usr/local/nginx;
+
+events {
+ worker_connections 1024;
+}
+
+http {
+ include mime.types;
+ default_type application/octet-stream;
+
+ server {
+ listen 80;
+ client_max_body_size 100m;
+
+ # Upload form should be submitted to this location
+ location /upload {
+ # Pass altered request body to this location
+ upload_pass /test;
+
+ # Store files to this directory
+ # The directory is hashed, subdirectories 0 1 2 3 4 5 6 7 8 9 should exist
+ upload_store /tmp 1;
+
+ # Allow uploaded files to be read only by user
+ upload_store_access user:r;
+
+ # Set specified fields in request body
+ upload_set_form_field "${upload_field_name}${upload_archive_elm}_name" $upload_file_name;
+ upload_set_form_field "${upload_field_name}${upload_archive_elm}_content_type" $upload_content_type;
+ upload_set_form_field "${upload_field_name}${upload_archive_elm}_path" $upload_tmp_path;
+ upload_set_form_field "${upload_field_name}${upload_archive_elm}_archive_path" $upload_archive_path;
+
+ # Inform backend about hash and size of a file
+ upload_aggregate_form_field "${upload_field_name}${upload_archive_elm}_md5" $upload_file_md5;
+ upload_aggregate_form_field "${upload_field_name}${upload_archive_elm}_size" $upload_file_size;
+
+ upload_pass_form_field "^submit$|^description$";
+
+ upload_cleanup 400-599;
+
+ upload_filter application/zip {
+ upload_unzip on;
+ }
+ }
+
+ # Pass altered request body to a backend
+ location /test {
+ proxy_pass http://localhost:8080;
+ }
+ }
+}

0 comments on commit ddfd4c1

Please sign in to comment.
Something went wrong with that request. Please try again.