]> git.pld-linux.org Git - packages/apache1-mod_gzip.git/blob - apache1-mod_gzip.conf
- update config dir macro
[packages/apache1-mod_gzip.git] / apache1-mod_gzip.conf
1 # $Id$
2 LoadModule gzip_module modules/mod_gzip.so
3
4 <IfModule mod_gzip.c>
5
6 ########################
7 ### responsibilities ###
8 ########################
9
10 # ---------------------------------------------------------------------
11 # use mod_gzip at all?
12   mod_gzip_on                   Yes
13 # (you can especially enable mod_gzip inside the central server
14 #  configuration but disable it inside some directories ot virtual
15 #  hosts by using this directive.)
16 # ---------------------------------------------------------------------
17
18 ######################################
19 ### statically precompressed files ###
20 ######################################
21
22 # ---------------------------------------------------------------------
23 # let mod_gzip perform 'partial content negotiation'?
24   mod_gzip_can_negotiate        Yes
25 # (if this option is active and a static file is to be served in com-
26 #  pressed for, then mod_gzip will look for a static precompressed
27 #  version of this file with a defined additional extension - see next
28 #  directive - which would be delivered with priority. This would allow
29 #  for avoiding to repeatedly compress the same static file and thus
30 #  saving CPU time.
31 #  No dynamic caching of this file is provided; currently the user
32 #  himself is responsible for creating and updating the precompressed
33 #  file's content.
34 # From version 1.3.19.2a mod_gzip automatically recognizes whether
35 # a statically precompressed file is older than its uncompressed
36 # original and in this case will serve the content of the original
37 # file in uncompressed form - as to rather serve correct data than
38 # outdated ones ...)
39
40 # ---------------------------------------------------------------------
41 # extension (suffix) for statically precompressed files
42 mod_gzip_static_suffix .gz
43 AddEncoding gzip .gz
44 # (effect: see previous directive; this string will be appended to the 
45 # name of the original file.
46 # be sure to configure the encoding 'gzip' for this extension as well,
47 # because mod_gzip doesn't serve the content itself but simply generates
48 # an Apache internal redirection to this URL. Therefore the remaining
49 # Apache configuration is responsible for setting the 'Content-Encoding'
50 # header properly ...
51 # prior to version 1.3.19.2a this value was not configurable.)
52
53 # ---------------------------------------------------------------------
54 # automatic updates for statically precompressed files
55 mod_gzip_update_static No
56 # (if set to 'Yes', this directive (being new in version 1.3.26.1a) would
57 # cause mod_gzip to automatically update an outdated version of any 
58 # statically precompressed file during the request, i. e. compress the 
59 # originally requested file and overwrite the precompressed variant 
60 # file with it! 
61 # for each automatic update of this type, mod_gzip will write a message 
62 # of the severity 'notice' into the Apache error_log. 
63 # while doing so, mod_gzip will directly read the original file's content. 
64 # therefore this content cannot be interpreted by any other Apache module 
65 # during the request. this might possibly not be what you want - hopefully 
66 # it will be what most users want, because it works fast this way. 
67 # use this configuration with a lot of care, and be sure that you don't 
68 # inadvertantly cause valuable files within the URL tree to be overwritten. 
69 # this isn't a feature to be used for mass hosting servers, especially 
70 # because mod_gzip might experience access control problems there - the 
71 # userid the Apache processes are running under need to have write access 
72 # to the precompressed files of all users, which may not automatically be 
73 # the case.) 
74 # ---------------------------------------------------------------------
75
76 ###################
77 ### bureaucracy ###
78 ###################
79 # ---------------------------------------------------------------------
80 # display status for mod_gzip
81 mod_gzip_command_version      '/mod_gzip_status'
82 # (defines an URL to display the status of mod_gzip; can be specified
83 # individually for each installation and protected against access via
84 # <Location> section for privacy reasons)
85 # ---------------------------------------------------------------------
86 # The status display will look like this:
87 #       mod_gzip is available...
88 #       mod_gzip_version = 1.3.26.1a
89 #       mod_gzip_on = Yes/No
90 # and thus will provide information about
91 # - mod_gzip being installed at the server and working correctly,
92 # - which version has been installed and
93 # - whether mod_gzip has been set 'active' for this Location
94 #   (-> mod_gzip_on)
95 # ---------------------------------------------------------------------
96
97 #######################
98 ### data management ###
99 #######################
100
101 # ---------------------------------------------------------------------
102 # Working directory for temporary files and the compression cache
103 # if not specified, the following default values are used:
104 # [Win32=c:\temp], [UNIX=/tmp]
105 # mod_gzip_temp_dir             /tmp
106 # (This directory must already exist and the userid being used for
107 #  running the Apache server must have read and write access to this
108 #  directory.
109 #  Unlike other Apache directives an absolute path name must be specified
110 #  here; a relative value will not be interpreted relatively to ServerRoot.
111 #  This pastname must NOT be terminated with '/'.
112 #  For maximum performance this directory should be located on a RAM disk,
113 #  if the file system isn't already being cached efficiently
114 # ---------------------------------------------------------------------
115 # Save temporary work files [Yes, No]
116 mod_gzip_keep_workfiles       No
117 # (one file per HTTP request - set to 'yes' for debugging purpose only!)
118 # ---------------------------------------------------------------------
119
120 ##################
121 ### file sizes ###
122 ##################
123
124 # ---------------------------------------------------------------------
125 # minimum size (in bytes) for files to be compressed
126 mod_gzip_minimum_file_size    500
127 # (for very small files compression will produce only small absolute gains
128 #  [you will still save about 50% of the content, but some additional
129 #  500 bytes of HTTP and TCP headers will always remain uncompressed],
130 #  but still produce CPU load for both client and server)
131 # ---------------------------------------------------------------------
132 # maximum size (in bytes) for files to be compressed
133 mod_gzip_maximum_file_size    500000
134 # (for very large files compression may eventually take rather long and
135 #  thus delay the start of the transmission.
136 #  Furthermode a limitation at this point prevents the server from
137 #  producing output of unlimited size in case of some endless loop
138 #  inside a CGI script - or even trying to compress streaming data -
139 #  which might otherwise cause the creation of a temporary file of
140 #  any size and even fill up the whole hard disk.
141 #  On the other hand, compression will have a much more perceivable
142 #  subjective effect for large files ... so be sure to fine-tune this
143 #  according to your requirements.)
144 # ---------------------------------------------------------------------
145 # maximum size (in bytes) for files to be compressed in memory
146 mod_gzip_maximum_inmem_size   60000
147 # (larger files will be compressed into the temp file directory; adapt
148 #  this value to your server's available main memory.
149 #  In mod_gzip 1.3.19.x larger values will automatically be limited to
150 #  60000 because some operating systems are said to have problems
151 #  allocating more than 64 kb of memory at a time.
152 # ---------------------------------------------------------------------
153
154 ####################
155 ### requirements ###
156 ####################
157
158 # (see chapter about caching for problems when using these directives.)
159 # ---------------------------------------------------------------------
160 # Required HTTP version of the client
161 # Possible values: 1000 = HTTP/1.0, 1001 = HTTP/1.1, ...
162 # This directive uses the same numeric protocol values as Apache does
163 # internally
164 mod_gzip_min_http             1000
165 # (By using this directive you may exclude old browsers, search engines
166 #  etc. from the compression procedure: if the user agent doesn't
167 #  declare itself capable of understanding at least the HTTP level
168 #  specified here, only uncompressed data will be delivered - no matter
169 #  what else it claims to be able to. The value of '1001' will especially
170 #  exclude Netscape 4.x. and a lot of proxy servers.)
171 # ---------------------------------------------------------------------
172 # HTTP methods to be handled 
173 # Possible values: 'GET', 'POST' or a list of both values.
174 mod_gzip_handle_methods GET POST 
175 # (By using this directive you may particularly exclude POST requests
176 # from the compression procedure. There are known cases where the
177 # handling of these requests by previous mod_gzip versions could cause
178 # problems. 
179 # Before version 1.3.19.2a this value was not configurable.)
180 # ---------------------------------------------------------------------
181
182 ###############
183 ### filters ###
184 ###############
185
186 # ---------------------------------------------------------------------
187 # which files are to be compressed?
188 #
189 # The order of processing during each of both phases is not important,
190 # but to trigger the compression of a request's content this request
191 # a) must match at least one include rule in each of both phases and
192 # b) must not match an exclude rule in any of both phases.
193 # These rules are not minimal, they are meant to serve as example only.
194 #
195 # phase 1: (reqheader, uri, file, handler)
196 # ========================================
197 # (see chapter about caching for problems when using 'reqheader' type
198 #  filter rules.)
199 # NO:   special broken browsers which request for gzipped content
200 #       but then aren't able to handle it correctly
201 mod_gzip_item_exclude         reqheader  "User-agent: Mozilla/4.0[678]"
202 #
203 # JA:   HTML-Dokumente
204 mod_gzip_item_include         file       \.html$
205 #
206 # NO:   include files / JavaScript & CSS (due to Netscape4 bugs)
207 mod_gzip_item_exclude         file       \.js$
208 mod_gzip_item_exclude         file       \.css$
209 #
210 # YES:  CGI scripts
211 mod_gzip_item_include         file       \.pl$
212 mod_gzip_item_include         handler    ^cgi-script$
213 #
214 # phase 2: (mime, rspheader)
215 # ===========================
216 # YES:  normal HTML files, normal text files, Apache directory listings
217 mod_gzip_item_include         mime       ^text/html$
218 mod_gzip_item_include         mime       ^text/plain$
219 mod_gzip_item_include         mime       ^httpd/unix-directory$
220 #
221 # NO:   images (GIF etc., will rarely ever save anything)
222 mod_gzip_item_exclude         mime       ^image/
223 # ---------------------------------------------------------------------
224 # In fact mod_gzip is checking only the first 4 characters of the 1st
225 # operand (in case of uri even the first 2 characters only, as to
226 # allow for values like url).
227 # ---------------------------------------------------------------------
228 # The table for mod_gzip_item rules (include and exclude) cannot contain
229 # more than 256 entries; when this number is exceeded mod_gzip will
230 # output the message "mod_gzip: ERROR: Item index is full"
231 # and report a configuration error to the Apache server.
232 # ---------------------------------------------------------------------
233 # The directive values described here are meant to describe the requests
234 # elected for compression most exactly.
235 # Especially for the mime rules it has to be made clear that the HTTP
236 # header 'Content-Type' (that will be checked by mod_gzip for this rule)
237 # in some cases may contain not only a MIME type but additionally a
238 # character set description (charset) as well.
239 # If this is the case for the requests to be handled then you need to
240 # remove the '$' char at the end of the corresponding value so that now
241 # only the prefix of this value will be tested for matching.
242 # ---------------------------------------------------------------------
243
244 ##########################
245 ### transfer encodings ###
246 ##########################
247
248 # ---------------------------------------------------------------------
249 # Allow mod_gzip to eliminate the HTTP header
250 #    'Transfer-encoding: chunked'
251 # and join the chunks to one (compressable) packet
252 mod_gzip_dechunk              Yes
253 # (this is required for handling several types of dynamically generated
254 # contents, especially for CGI and SSI pages, but also for pages produced
255 # by some Java Servlet interpreters.
256 # ---------------------------------------------------------------------
257
258 ###############
259 ### logging ###
260 ###############
261
262 # ---------------------------------------------------------------------
263 # Extended log format (for testing the compression effect)
264 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}n pct." common_with_mod_gzip_info2
265 # ---------------------------------------------------------------------
266 # Create additional log file
267 CustomLog                     logs/mod_gzip.log common_with_mod_gzip_info2
268 # (surely you can redefine your normal log file format, but you mal well
269 #  keep its format standard compatible for evaluation by standard web
270 #  analysis tools. So we just create another log file.)
271 # ---------------------------------------------------------------------
272 # Volume computation of the delivered files inside the Apache access_log:
273 # count HTTP header size (in bytes) as part of total output size
274 mod_gzip_add_header_count     Yes
275 # (This will be more than the pure document content, but it will more
276 #  realistically describe the total output traffic of the HTTP request)
277 # ---------------------------------------------------------------------
278
279
280 ###############
281 ### proxies ###
282 ###############
283 # ---------------------------------------------------------------------
284 # sending a 'Vary' HTTP header
285 mod_gzip_send_vary Yes 
286 # (see chapter about caching for this directive.) 
287 # don't change this unless you absolutely know what you are doing!
288 # ---------------------------------------------------------------------
289
290 </IfModule>
291
292 # vim: filetype=apache ts=4 sw=4 et
This page took 0.075401 seconds and 3 git commands to generate.