35c279ac59
This patch grants json files from koha-tmpl. Otherwise systempreferences won't be able to fetch them. TEST PLAN: 1) Try to set systempreference BorrowerUnwantedField. 2) The modal is empty. 3) Modify Apache configurations like in this patch. 4) Try again set the systempreference. 5) The modal should show list of parameters. Sponsored-by: Koha-Suomi Oy Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> JD Amended patch: replace tab characters and reword commit title Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
280 lines
9.5 KiB
Text
280 lines
9.5 KiB
Text
# Koha Apache Configuration Directives
|
|
|
|
#NameVirtualHost *
|
|
|
|
## OPAC
|
|
<VirtualHost __WEBSERVER_IP__:__WEBSERVER_PORT__>
|
|
ServerAdmin __WEBMASTER_EMAIL__
|
|
DocumentRoot __OPAC_WWW_DIR__
|
|
ServerName __WEBSERVER_HOST__
|
|
# ServerAlias opac.mydomain.com
|
|
ScriptAlias /cgi-bin/koha/ "__OPAC_CGI_DIR__/opac/"
|
|
ScriptAlias /index.html "__OPAC_CGI_DIR__/opac/opac-main.pl"
|
|
ScriptAlias /opac-search.pl "__OPAC_CGI_DIR__/opac/opac-search.pl"
|
|
ScriptAlias /search "__OPAC_CGI_DIR__/opac/opac-search.pl"
|
|
ErrorLog __LOG_DIR__/koha-opac-error_log
|
|
# CustomLog __LOG_DIR__/koha-opac-access.log combined
|
|
# TransferLog __LOG_DIR__/koha-opac-access.log
|
|
SetEnv KOHA_CONF "__KOHA_CONF_DIR__/koha-conf.xml"
|
|
SetEnv PERL5LIB "__PERL5LIB_DIRS__"
|
|
|
|
# This syntax allows you to override a system preference
|
|
# for a given virtual host. Use with caution!
|
|
# You should add all the system preferences you override
|
|
# in one or more vhosts to the environment variable
|
|
# OVERRIDE_SYSPREF_NAMES for your staff intranet vhost
|
|
# SetEnv OVERRIDE_SYSPREF_PrefName Value
|
|
|
|
<Directory "__OPAC_WWW_DIR__">
|
|
Options -Indexes
|
|
</Directory>
|
|
|
|
# Secure internal stuff
|
|
<DirectoryMatch "__OPAC_WWW_DIR__/.*/(modules|xslt|includes)">
|
|
Require all denied
|
|
</DirectoryMatch>
|
|
|
|
<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/javascript$
|
|
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>
|
|
|
|
|
|
# Repeat this virtualhost stanza changing the following environment vars to
|
|
# create multiple OPAC interfaces with custom css and/or search limits:
|
|
# SetEnv OPAC_CSS_OVERRIDE mystyle.css
|
|
# SetEnv OPAC_SEARCH_LIMIT branch:CODE
|
|
# SetEnv OPAC_LIMIT_OVERRIDE 1
|
|
|
|
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
|
|
|
|
<IfModule mod_rewrite.c>
|
|
# Rewrite Rules
|
|
RewriteEngine On
|
|
|
|
RewriteRule ^/bib/([^\/]*)/?$ /cgi-bin/koha/opac-detail\.pl?bib=$1 [PT]
|
|
RewriteRule ^/isbn/([^\/]*)/?$ /search?q=isbn:$1 [PT]
|
|
RewriteRule ^/issn/([^\/]*)/?$ /search?q=issn:$1 [PT]
|
|
RewriteRule ^(.*)_[0-9]{2}\.[0-9]{7}\.(js|css)$ $1.$2 [L]
|
|
|
|
# REST API configuration
|
|
Alias "/api" "__API_CGI_DIR__"
|
|
<Directory __API_CGI_DIR__>
|
|
Options +ExecCGI +FollowSymlinks
|
|
AddHandler cgi-script .pl
|
|
|
|
SetEnv MOJO_MODE "production"
|
|
|
|
RewriteEngine On
|
|
RewriteBase /api/
|
|
RewriteCond %{REQUEST_URI} !^/api/v[0-1]+/app.pl
|
|
RewriteRule ^(v[0-9]+)/(.*)$ /api/$1/app.pl/api/$1/$2 [L]
|
|
|
|
</Directory>
|
|
</IfModule>
|
|
|
|
<IfModule mod_expires.c>
|
|
ExpiresActive on
|
|
ExpiresByType text/css "access plus 60 days"
|
|
ExpiresByType application/javascript "access plus 60 days"
|
|
ExpiresByType image/png "access plus 12 hours"
|
|
ExpiresByType image/gif "access plus 12 hours"
|
|
</IfModule>
|
|
</VirtualHost>
|
|
|
|
## Intranet
|
|
<VirtualHost __WEBSERVER_IP__:__WEBSERVER_PORT_LIBRARIAN__>
|
|
ServerAdmin __WEBMASTER_EMAIL__
|
|
DocumentRoot __INTRANET_WWW_DIR__
|
|
ServerName __WEBSERVER_HOST__:__WEBSERVER_PORT_LIBRARIAN__
|
|
# ServerAlias intranet.mydomain.com
|
|
ScriptAlias /cgi-bin/koha/ "__INTRANET_CGI_DIR__/"
|
|
ScriptAlias /index.html "__INTRANET_CGI_DIR__/mainpage.pl"
|
|
ScriptAlias /search "__INTRANET_CGI_DIR__/catalogue/search.pl"
|
|
Alias /plugin/ "__PLUGINS_DIR__/"
|
|
ErrorLog __LOG_DIR__/koha-error_log
|
|
# TransferLog __LOG_DIR__/koha-access.log
|
|
SetEnv KOHA_CONF "__KOHA_CONF_DIR__/koha-conf.xml"
|
|
SetEnv PERL5LIB "__PERL5LIB_DIRS__"
|
|
Options +FollowSymLinks
|
|
|
|
# If you are overriding any system preferences,
|
|
# list them in this variable so the preference editor
|
|
# knows that they have been overridden.
|
|
# SetEnv OVERRIDE_SYSPREF_NAMES "Pref1,Pref2,Pref3"
|
|
|
|
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
|
|
|
|
<Directory "__INTRANET_WWW_DIR__">
|
|
Options -Indexes
|
|
</Directory>
|
|
|
|
# Secure internal stuff
|
|
<DirectoryMatch "__INTRANET_WWW_DIR__/.*/(modules|xslt|includes)">
|
|
Require all denied
|
|
<FilesMatch "\.(json)$">
|
|
Require all granted
|
|
</FilesMatch>
|
|
</DirectoryMatch>
|
|
|
|
<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/javascript$
|
|
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_rewrite.c>
|
|
# Rewrite Rules
|
|
RewriteEngine On
|
|
|
|
RewriteRule ^/bib/([^\/]*)/?$ /cgi-bin/koha/catalogue/detail.pl?biblionumber=$1 [PT]
|
|
RewriteRule ^/isbn/([^\/]*)/?$ /search?q=isbn:$1 [PT]
|
|
RewriteRule ^/issn/([^\/]*)/?$ /search?q=issn:$1 [PT]
|
|
RewriteRule ^(.*)_[0-9]{2}\.[0-9]{7}\.(js|css)$ $1.$2 [L]
|
|
|
|
|
|
# REST API configuration
|
|
Alias "/api" "__API_CGI_DIR__"
|
|
<Directory __API_CGI_DIR__>
|
|
Options +ExecCGI +FollowSymlinks
|
|
AddHandler cgi-script .pl
|
|
|
|
SetEnv MOJO_MODE "production"
|
|
|
|
RewriteEngine On
|
|
RewriteBase /api/
|
|
RewriteCond %{REQUEST_URI} !^/api/v[0-1]+/app.pl
|
|
RewriteRule ^(v[0-9]+)/(.*)$ /api/$1/app.pl/api/$1/$2 [L]
|
|
</Directory>
|
|
</IfModule>
|
|
|
|
<IfModule mod_expires.c>
|
|
ExpiresActive on
|
|
ExpiresByType text/css "access plus 60 days"
|
|
ExpiresByType application/javascript "access plus 60 days"
|
|
ExpiresByType image/png "access plus 12 hours"
|
|
ExpiresByType image/gif "access plus 12 hours"
|
|
</IfModule>
|
|
</VirtualHost>
|
|
|
|
# Uncomment this VirtualHost to enable API access through
|
|
# api.__WEBSERVER_HOST__:__WEBSERVER_PORT__
|
|
#<VirtualHost __WEBSERVER_IP__:__WEBSERVER_PORT__>
|
|
# ServerAdmin __WEBMASTER_EMAIL__
|
|
# DocumentRoot __INTRANET_CGI_DIR__/api
|
|
# ServerName api.__WEBSERVER_HOST__:__WEBSERVER_PORT__
|
|
# SetEnv KOHA_CONF "__KOHA_CONF_DIR__/koha-conf.xml"
|
|
# SetEnv PERL5LIB "__PERL5LIB_DIRS__"
|
|
# ErrorLog __LOG_DIR__/koha-api-error_log
|
|
#
|
|
# <IfModule mod_rewrite.c>
|
|
# <Directory __API_CGI_DIR__>
|
|
# Options +ExecCGI +FollowSymlinks
|
|
# AddHandler cgi-script .pl
|
|
#
|
|
# SetEnv MOJO_MODE "production"
|
|
#
|
|
# RewriteEngine on
|
|
#
|
|
# RewriteRule ^api/(.*) $1 [L]
|
|
#
|
|
# RewriteCond %{REQUEST_FILENAME} !-f
|
|
# RewriteCond %{REQUEST_FILENAME} !-d
|
|
# RewriteCond %{DOCUMENT_ROOT}/$1/app.pl -f
|
|
# RewriteRule ^(.*?)/.* $1/app.pl/api/$0 [L]
|
|
# </Directory>
|
|
# </IfModule>
|
|
#</VirtualHost>
|