Permalink
Browse files

First commit.

  • Loading branch information...
0 parents commit 72f60ce16024d2144198973abb935a98e676fc9b Evan Miller committed Oct 19, 2009
74 CHANGES
@@ -0,0 +1,74 @@
+Changes with mod_zip 1.1.5 13 Aug 2009
+
+ *) Bugfix: compatibility with nginx 0.7.25 and later
+
+ *) Bugfix: Range works with local, Memcached, and FastCGI files
+
+Changes with mod_zip 1.1.4 10 Feb 2009
+
+ *) Bugfix: compilation error on FreeBSD
+
+ *) Feature: Range end is optional (e.g. "bytes=0-")
+
+Changes with mod_zip 1.1.3 13 Aug 2008
+
+ *) Bugfix: crash when subrequests returned 404
+
+ *) Bugfix: compatibility with BOMArchiveHelper.app on Mac OS X (but only
+ when CRC-32's are supplied).
+
+ *) Feature: CRC-32's are optional. Use "-" to have mod_zip calculate them
+ on the fly. However, note that without CRC-32's up front, mod_zip will
+ not honor "Range" requests.
+
+
+Changes with mod_zip 1.1.2 06 Aug 2008
+
+ *) Bugfix: compilation error with nginx 0.6.x
+
+
+Changes with mod_zip 1.1.1 05 Aug 2008
+
+ *) Bugfix: compilation error on some platforms.
+
+
+Changes with mod_zip 1.1 04 Aug 2008
+
+ *) Feature: "Range" header support.
+
+ *) Change: new file list syntax. See README.
+
+
+Changes with mod_zip 1.0.8 13 Dec 2007
+
+ *) Bugfix: strip "Range" header from subrequests
+
+
+Changes with mod_zip 1.0.7 29 Nov 2007
+
+ *) Bugfix: clear outgoing "Accept-Ranges" header
+
+
+Changes with mod_zip 1.0.5 18 Sep 2007
+
+ *) Bugfix: support archives larger than 2GB
+
+
+Changes with mod_zip 1.0.4 31 Aug 2007
+
+ *) Bugfix: support empty files in an archive
+
+
+Changes with mod_zip 1.0.3 16 Aug 2007
+
+ *) Feature: support for Content-Length when X-Archive-Files-* headers are provided
+
+
+Changes with mod_zip 1.0.2 06 Aug 2007
+
+ *) Bugfix: Fixed compilation with no --with-http-debug flag
+
+
+Changes with mod_zip 1.0.1 04 Jul 2007
+
+ *) Initial public release
39 README
@@ -0,0 +1,39 @@
+mod_zip
+-------
+
+mod_zip assembles ZIP archives dynamically. It can stream component files from
+upstream servers with nginx's native proxying code, so that the process never
+takes up more than a few KB of RAM at a time, even while assembling archives that
+are (potentially) hundreds of megabytes.
+
+To install, compile nginx with the following option:
+
+ --add-module=/path/to/this/directory
+
+nginx 0.6.17 or later is required.
+
+The module is activated when the original response (presumably from an
+upstream) includes the following HTTP header:
+
+ X-Archive-Files: zip
+
+It then scans the response body for a list of files. The syntax is a
+space-separated list of the file checksum (CRC-32), size (in bytes), location
+(properly URL-encoded), and file name. One file per line. The file location
+corresponds to a location in your nginx.conf; the file can be on disk, from an
+upstream, or from another module. The file name can include a directory path,
+and is what will be extracted from the ZIP file. Example:
+
+1034ab38 428 /foo.txt My Document1.txt
+83e8110b 100339 /bar.txt My Other Document1.txt
+
+Files are retrieved and encoded in order. If a file cannot be found or the file
+request returns any sort of error, the download is aborted.
+
+The CRC-32 is optional. Put "-" if you don't know the CRC-32; note that in this
+case mod_zip will disable support the "Range" header.
+
+Tip: add a header "Content-Disposition: attachment; filename=foobar.zip" in the
+upstream response if you would like the client to name the file "foobar.zip"
+
+Questions/patches may be directed to Evan Miller, emmiller@gmail.com.
6 config
@@ -0,0 +1,6 @@
+ngx_addon_name=ngx_http_zip_module
+HTTP_AUX_FILTER_MODULES="$HTTP_AUX_FILTER_MODULES ngx_http_zip_module"
+NGX_ADDON_SRCS="$NGX_ADDON_SRCS $ngx_addon_dir/ngx_http_zip_module.c"
+NGX_ADDON_SRCS="$NGX_ADDON_SRCS $ngx_addon_dir/ngx_http_zip_parsers.c"
+NGX_ADDON_SRCS="$NGX_ADDON_SRCS $ngx_addon_dir/ngx_http_zip_file.c"
+NGX_ADDON_SRCS="$NGX_ADDON_SRCS $ngx_addon_dir/ngx_http_zip_headers.c"
Oops, something went wrong.

0 comments on commit 72f60ce

Please sign in to comment.