be90542872
This adds caching directives to the static resources so that the browser doesn't ask about them all the time. By default, Debian apache doesn't have the required module (mod_expires) enabled, and so this patch will have no effect. In order to enable this function, run: a2enmod expires and restart apache. Test Plan: * Using firebug or equivalent, load a page. * Note that none of the images, css, or js files have a Cache-Control or Expires header set. * Add this patch, redeploy the package with it (or overwrite the apache-share.conf file) enable the 'expires' module, restart apache. * Force-reload the page * Note that the images, css, js now have Cache-Control and Expires set for 12 hours into the future. Signed-off-by: Galen Charlton <gmc@esilibrary.com> Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
76 lines
2.5 KiB
Text
76 lines
2.5 KiB
Text
# Apache configuration settings that are shared for every Koha instance.
|
|
# This file contains settings that are the same for both the OPAC and
|
|
# the Intranet site.
|
|
#
|
|
# This file should be included from an instance's
|
|
# /etc/apache2/site-available file, once from the OPAC section, and once
|
|
# from the intranet section.
|
|
|
|
|
|
SetEnv PERL5LIB "/usr/share/koha/lib"
|
|
|
|
|
|
<IfModule mod_gzip.c>
|
|
mod_gzip_on yes
|
|
mod_gzip_dechunk yes
|
|
mod_gzip_keep_workfiles No
|
|
mod_gzip_can_negotiate yes
|
|
mod_gzip_update_static No
|
|
mod_gzip_temp_dir /tmp
|
|
mod_gzip_minimum_file_size 512
|
|
mod_gzip_maximum_file_size 1000000
|
|
mod_gzip_maximum_inmem_size 1000000
|
|
mod_gzip_handle_methods GET POST
|
|
mod_gzip_item_exclude reqheader "User-Agent: .*Mozilla/4\..*\["
|
|
mod_gzip_item_exclude mime ^image/.*
|
|
mod_gzip_item_exclude rspheader Content-Type:image/*
|
|
mod_gzip_item_include file \.js$
|
|
mod_gzip_item_include mime ^application/x-javascript$
|
|
mod_gzip_item_include file \.php$
|
|
mod_gzip_item_include mime ^text/html$
|
|
mod_gzip_item_include file \.css$
|
|
mod_gzip_item_include mime ^text/css$
|
|
</IfModule>
|
|
|
|
|
|
<IfModule mod_deflate.c>
|
|
# Compress content with type html, text, and css, ...
|
|
AddOutputFilterByType DEFLATE text/plain text/html text/xml text/css
|
|
AddOutputFilterByType DEFLATE application/xml application/xhtml+xml application/rss+xml application/javascript application/x-javascript
|
|
|
|
DeflateCompressionLevel 9
|
|
|
|
# Properly handle old browsers that do not support compression
|
|
BrowserMatch ^Mozilla/4 gzip-only-text/html
|
|
BrowserMatch ^Mozilla/4\.0[678] no-gzip
|
|
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
|
|
|
|
DeflateFilterNote Input instream
|
|
DeflateFilterNote Output outstream
|
|
DeflateFilterNote Ratio ratio
|
|
|
|
LogFormat '"%r" %{outstream}n/%{instream}n (%{ratio}n%%)' deflate
|
|
<IfModule mod_headers.c>
|
|
#properly handle requests coming from behind proxies
|
|
Header append Vary User-Agent
|
|
</IfModule>
|
|
</IfModule>
|
|
|
|
<IfModule mod_expires.c>
|
|
ExpiresActive on
|
|
ExpiresByType text/css "access plus 12 hours"
|
|
ExpiresByType application/javascript "access plus 12 hours"
|
|
ExpiresByType image/png "access plus 12 hours"
|
|
ExpiresByType image/gif "access plus 12 hours"
|
|
</IfModule>
|
|
|
|
Options +FollowSymLinks
|
|
|
|
|
|
ErrorDocument 400 /cgi-bin/koha/errors/400.pl
|
|
ErrorDocument 401 /cgi-bin/koha/errors/401.pl
|
|
ErrorDocument 403 /cgi-bin/koha/errors/403.pl
|
|
ErrorDocument 404 /cgi-bin/koha/errors/404.pl
|
|
ErrorDocument 500 /cgi-bin/koha/errors/500.pl
|
|
|
|
RewriteEngine On
|