{"id":19437693,"url":"https://github.com/mganss/zopflidll","last_synced_at":"2026-06-10T01:31:19.094Z","repository":{"id":20548453,"uuid":"23828177","full_name":"mganss/ZopfliDll","owner":"mganss","description":"Zopfli for IIS","archived":false,"fork":false,"pushed_at":"2014-09-09T10:14:23.000Z","size":484,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-25T07:15:24.234Z","etag":null,"topics":["7-zip","7z","compression","iis","zopfli"],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mganss.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-09-09T09:56:18.000Z","updated_at":"2022-05-05T11:05:24.000Z","dependencies_parsed_at":"2022-09-10T22:40:59.051Z","dependency_job_id":null,"html_url":"https://github.com/mganss/ZopfliDll","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/mganss/ZopfliDll","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mganss%2FZopfliDll","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mganss%2FZopfliDll/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mganss%2FZopfliDll/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mganss%2FZopfliDll/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mganss","download_url":"https://codeload.github.com/mganss/ZopfliDll/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mganss%2FZopfliDll/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34133404,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-09T02:00:06.510Z","response_time":63,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["7-zip","7z","compression","iis","zopfli"],"created_at":"2024-11-10T15:15:37.590Z","updated_at":"2026-06-10T01:31:19.074Z","avatar_url":"https://github.com/mganss.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ZopfliDll\n\nZopfliDll is a custom extension library for Microsoft IIS that can compress with [Google's Zopfli](https://code.google.com/p/zopfli/) algorithm or a configurable command line tool (such as [7-Zip](http://www.7-zip.org/)). \nIt can replace the builtin [gzip compression library](http://msdn.microsoft.com/en-us/library/dd692872.aspx) (gzip.dll).\n\nIf you want to try it out on the command line, check out [this other project](https://github.com/mganss/IisGzip).\n\n## Usage (Zopfli)\n\n1. Copy the `ZopfliDll.dll` (or `ZopfliDll64.dll`) file to a folder accessible by the IIS process. \n2. Edit the [`\u003cscheme\u003e` element](http://www.iis.net/configreference/system.webserver/httpcompression/scheme) of the [`\u003chttpCompression\u003e` element](http://www.iis.net/configreference/system.webserver/httpcompression) in [`applicationHost.config`](http://www.iis.net/learn/get-started/planning-your-iis-architecture/introduction-to-applicationhostconfig) (unfortunately, these settings cannot be overriden in Web.config):\n\n   ```xml\n   \u003chttpCompression\u003e\n      \u003cscheme name=\"gzip\" dll=\"Path\\To\\ZopfliDll64.dll\" /\u003e\n   \u003c/httpCompression\u003e\n   ```\n\n3. Restart the \"World Wide Web Publishing Service\".\n\nStatic files are by default saved to `%SystemDrive%\\inetpub\\temp\\IIS Temporary Compressed Files`.\n\nBecause you cannot have different DLLs for dynamic and static compression (and the DLL does not know whether it's compressing dynamic or static content), ZopfliDll uses the compression level to switch between the builtin fast gzip compression and the slow Zopfli algorithm:\n\n\u003ctable\u003e\n\u003ctr\u003e\u003cth\u003eCompression Level in IIS config\u003c/th\u003e\u003cth\u003eCompression level used\u003c/th\u003e\u003c/tr\u003e\n\u003ctr\u003e\u003ctd colspan=\"2\" align=\"center\"\u003eIIS builtin\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\u003ctd\u003e0\u003c/td\u003e\u003ctd\u003e0\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\u003ctd\u003e1\u003c/td\u003e\u003ctd\u003e2\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\u003ctd\u003e2\u003c/td\u003e\u003ctd\u003e4\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\u003ctd\u003e3\u003c/td\u003e\u003ctd\u003e6\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\u003ctd\u003e4\u003c/td\u003e\u003ctd\u003e8\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\u003ctd\u003e5\u003c/td\u003e\u003ctd\u003e10\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\u003ctd colspan=\"2\" align=\"center\"\u003eZopfli (iterations)\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\u003ctd\u003e6\u003c/td\u003e\u003ctd\u003e1\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\u003ctd\u003e7\u003c/td\u003e\u003ctd\u003e5\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\u003ctd\u003e8\u003c/td\u003e\u003ctd\u003e10\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\u003ctd\u003e9\u003c/td\u003e\u003ctd\u003e15\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\u003ctd\u003e10\u003c/td\u003e\u003ctd\u003e20\u003c/td\u003e\u003c/tr\u003e\n\u003c/table\u003e\n\n## Usage (command line tool)\n\nZopfliDll has a second mode of operation which allows you to compress content using an arbitrary command line tool. If ZopfliDll finds a file called `cmd.txt` in the same folder as the DLL, it uses the content of this file to start a command line tool for each stream of data to compress. \n\nThe command line tool should read uncompressed data from stdin and write compressed data in gzip format to stdout. The command line may contain environment variables and a placeholder for the compression level. Example:\n\n```\n%ProgramFiles%\\7-Zip\\7z.exe a dummy -tgzip -mx={1;9} -si -so\n```\n\nCompression levels of 0-5 in the IIS configuration are used for compression with the builtin gzip compression as in the table above. Levels 6-10 are spread to the range in the placeholder (1-9 in the example).\n\n## Status\n\n\"Works on my machine\"\u0026trade; :smile_cat:\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmganss%2Fzopflidll","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmganss%2Fzopflidll","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmganss%2Fzopflidll/lists"}