File: samples.txt Subj: KNOWN good mod_gzip sample configurations Auth: Kevin Kiley NOTE: These KNOWN good sample configurations are for version 1.3.17.2a ( and above ) of mod_gzip unless otherwise indicated. Many thanks to the members of the mod_gzip online forum for taking the time to post their KNOWN GOOD configurations. You can join the mod_gzip online forum at... http://lists.over.net/mailman/listinfo/mod_gzip There are several 'safe' configurations in this file so scroll down to see them all. They will be broken out into separate files soon with their own links but for now they are all included here in the same document. *** MINIMUM 'SAFE' CONFIGURATION... *** This will only compress text/html and text/plain MIME types... Submitted by: Kevin Kiley 02/21/01 The minimum 'safe' set of configuration commands for the 1.3.17.x series would still look like the following... # [ mod_gzip sample configuration ] # mod_gzip_on [Yes/No] # # Use this command to turn mod_gzip 'on' or 'off'. # The command can go into the base server configuration # or be used to control if mod_gzip is active inside # any particular virtual directory or host section. # mod_gzip_on Yes # mod_gzip_item_include type regular_expression # mod_gzip_item_exclude type regular_expression # # Use 'include' and 'exclude' commands to specify which # items are eligible for compression. # # The valid values for 'type' field are... # # file, mime, handler, reqheader, rspheader. # # The 3rd parameter must be a valid 'regular expression' # which will be used to 'match' the requested item(s). # mod_gzip_item_include file \.htm$ mod_gzip_item_include file \.html$ mod_gzip_item_include mime text/.* # NOTE: The following entry was required to compress negotiated # home pages in version 1.3.17.1a but is now only needed # if you would like to compress your directory listings... # # mod_gzip_item_include mime httpd/unix-directory # mod_gzip_dechunk [Yes/No] # # If a response is being generated dynamically and # the response content generator is always using # 'Transfer-Encoding: chunked' then that response # cannot normally be 'compressed' since a transport layer # encoding is already being applied. The "mod_gzip_dechunk Yes" # option will transparently remove all 'chunked' encoding # and allow the response to be fully compressed. Certain # versions of mod_php will need this option set ON for the # dynamic output to be compressed. Whenever possible just # make sure this option and the extra step required # are NOT needed by making sure the response generator is NOT # using 'Transfer-encoding: chunked'. # mod_gzip_dechunk yes # mod_gzip_min_http [1000/1001/etc...] # # Only use this to 'block' browsers that don't support a # certain minimum level of the HTTP protocol. The option # uses the same internal 'numeric' value(s) used by Apache # itself to indicate certain HTTP protocol support level(s). # # 1000=HTTP/1.0 1001=HTTP/1.1, etc. # # mod_gzip_min_http 1000 # mod_gzip_temp_dir /tmp # # Use this option to specify the directory that mod_gzip should # use for workfiles. Do not add a trailing 'slash' to the name. # # Whenever possible ( and for the best performance ) this 'temporary' # workfile directory should be a valid RAMDISK. # # The directory must already exist when Apache starts. # # Be sure permissions are set right for whatever directory is # used as the 'temp_dir'. The User/Group used by the Server during # runtime ( such as 'www' or 'nobody' ) must have read/write # access to the directory. If permissions are incorrect then the # mod_gzip 'result' string will probably be 'RECOVERY' and your # Apache error_log will contain messages about mod_gzip being # unable to access work files. # # If no 'mod_gzip_temp_dir' is specified then the DEFAULTS are... # # /tmp for UNIX # c:\temp for Win32. # mod_gzip_temp_dir /tmp # mod_gzip_keep_workfiles [Yes/No] # # If this option is 'Yes' then mod_gzip will not delete any # workfiles it may be generating in the 'mod_gzip_temp_dir' # location. Use this option only for diagnostic purposes. # The 'default' setting is 'No'. # mod_gzip_keep_workfiles No # [End of mod_gzip sample config] *** PHP, JAVA JSP TOMCAT, MOD_JK, MOD_PERL, ETC... Submitted by: David Rees 02/21/01 Here is a KNOWN working config which compresses output for static text files, PHP, JSP/servlets (using Jakarta Tomcat/ mod_jk), mod_perl as well as the output from the mod_status and mod_info modules. It EXCLUDES Style Sheets ( .css ) and .js scripts and image/* mime type(s). mod_gzip_on Yes mod_gzip_minimum_file_size 300 mod_gzip_maximum_file_size 0 mod_gzip_maximum_inmem_size 100000 mod_gzip_keep_workfiles No mod_gzip_temp_dir /usr/local/apache/gzip mod_gzip_item_include file \.html$ mod_gzip_item_include file \.jsp$ mod_gzip_item_include file \.php$ mod_gzip_item_include file \.pl$ mod_gzip_item_include mime ^text/.* mod_gzip_item_include mime ^application/x-httpd-php mod_gzip_item_include mime ^httpd/unix-directory$ mod_gzip_item_include handler ^perl-script$ mod_gzip_item_include handler ^server-status$ mod_gzip_item_include handler ^server-info$ mod_gzip_item_exclude file \.css$ mod_gzip_item_exclude file \.js$ mod_gzip_item_exclude mime ^image/.* *** LINUX + APACHE 1.3.14 + MOD_JSERV + MOD_SSE Here is a KNOWN good mod_gzip configuration section for Apache 1.3.14 with mod_jserv and mod_ssl running on linux. Submitted by: Michael Suszycki 02/21/01 mod_gzip_on yes mod_gzip_dechunk yes mod_gzip_keep_workfiles No mod_gzip_temp_dir /tmp mod_gzip_minimum_file_size 1002 mod_gzip_maximum_file_size 0 mod_gzip_maximum_inmem_size 1000000 mod_gzip_item_include file \.htm$ mod_gzip_item_include file \.html$ mod_gzip_item_include mime text/.* mod_gzip_item_include file \.php$ mod_gzip_item_include mime "jserv-servlet" mod_gzip_item_include handler "jserv-servlet" mod_gzip_item_include mime "application/x-httpd-php.*" mod_gzip_item_include mime httpd/unix-directory mod_gzip_item_exclude file "\.css$" mod_gzip_item_exclude file "\.js$" mod_gzip_item_exclude file "\.wml$" LogFormat "%h %l %u %t \"%V %r\" %>s %b mod_gzip: %{mod_gzip_result}n In:%{mod_gzip_input_size}n Out:%{mod_gzip_output_size}n:%{mod_gzip_compression_ratio}npct." common_with_mod_gzip_info2 CustomLog /var/log/httpd/mod_gzip common_with_mod_gzip_info2 *** SuSE LINIX + APACHE 1.3.17 + mod_php 4.0.5dev Here is a KNOWN good mod_gzip configuration section for SuSE Linux 6.2 running Apache 1.3.17 and mod_php 4.0.5dev. It only compresses UNIX directory listings, text/html, text/plain and PHP script output. Submitted by: Philip Hofstetter 02/24/01 mod_gzip_on Yes mod_gzip_item_include file \.htm$ mod_gzip_item_include file \.html$ mod_gzip_item_include file \.php$ mod_gzip_item_include mime text/.* mod_gzip_item_include mime httpd/unix-directory mod_gzip_dechunk yes mod_gzip_temp_dir /tmp mod_gzip_keep_workfiles No *** END OF DOCUMENT