# TransferLog __LOG_DIR__/koha-opac-access.log
SetEnv KOHA_CONF "__KOHA_CONF_DIR__/koha-conf.xml"
SetEnv PERL5LIB "__PERL_MODULE_DIR__"
- SetEnv MEMCACHED_SERVERS "__MEMCACHED_SERVERS__"
- SetEnv MEMCACHED_NAMESPACE "__MEMCACHED_NAMESPACE__"
+
+ # 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
# Secure internal stuff
<DirectoryMatch "__OPAC_WWW_DIR__/.*/(modules|xslt|includes)">
- Order deny,allow
- Deny from all
+ Require all denied
</DirectoryMatch>
<IfModule mod_gzip.c>
# Rewrite Rules
RewriteEngine On
- # Uncomment to turn on rewrite logging
- #RewriteLog __LOG_DIR__/koha-opac-rewrite.log
- #RewriteLogLevel 1
-
- RewriteCond %{QUERY_STRING} (.*?)(?:[A-Za-z0-9_-]+)=&(.*)
+ #The following two directives are unnecessary to proper Koha functioning.
+ #RewriteCond %{QUERY_STRING} (.*?)(?:[A-Za-z0-9_-]+)=&(.*)
#RewriteRule (.+) $1?%1%2 [N,R,NE]
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>
# ServerAlias intranet.mydomain.com
ScriptAlias /cgi-bin/koha/ "__INTRANET_CGI_DIR__/"
ScriptAlias /index.html "__INTRANET_CGI_DIR__/mainpage.pl"
- ScriptAlias /search "__INTRANET_CGI_DIR__/search.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 "__PERL_MODULE_DIR__"
- SetEnv MEMCACHED_SERVERS "__MEMCACHED_SERVERS__"
- SetEnv MEMCACHED_NAMESPACE "__MEMCACHED_NAMESPACE__"
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
# Secure internal stuff
<DirectoryMatch "__INTRANET_WWW_DIR__/.*/(modules|xslt|includes)">
- Order deny,allow
- Deny from all
+ Require all denied
</DirectoryMatch>
<IfModule mod_gzip.c>
# Rewrite Rules
RewriteEngine On
- # Uncomment to turn on rewrite logging
- #RewriteLog __LOG_DIR__/koha-intranet-rewrite.log
- #RewriteLogLevel 1
-
- RewriteCond %{QUERY_STRING} (.*?)(?:[A-Za-z0-9_-]+)=&(.*)
+ #The following two directives are unnecessary to proper Koha functioning.
+ #RewriteCond %{QUERY_STRING} (.*?)(?:[A-Za-z0-9_-]+)=&(.*)
#RewriteRule (.+) $1?%1%2 [N,R,NE]
- RewriteRule ^/bib/([^\/]*)/?$ /cgi-bin/koha/detail\.pl?bib=$1 [PT]
+ 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 "__PERL_MODULE_DIR__"
+# 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>