[Koha-patches] [PATCH 2/5] Bug 13791: Apache configuration files
Tomas Cohen Arazi
tomascohen at gmail.com
Fri Aug 14 21:14:16 CEST 2015
From: Tomas Cohen Arazi <tomascohen at theke.io>
This patch adds an include to each VirtualHost definition (OPAC and Intranet)
and a variable definition, taking advantage of Apache 2.4.x features.
The instance name is reused inside the includes providing a simple way of
dealing with the apache <-> plack configuration.
A check for the right apache version is introduced, in the for of an IfVersion block:
<IfVersion >= 2.4>
--- Plack configuration here ---
</IfVersion>
---
debian/templates/apache-shared-intranet-plack.conf | 25 ++++++++++++++++++++++
debian/templates/apache-shared-opac-plack.conf | 25 ++++++++++++++++++++++
debian/templates/apache-site.conf.in | 8 +++++++
3 files changed, 58 insertions(+)
create mode 100644 debian/templates/apache-shared-intranet-plack.conf
create mode 100644 debian/templates/apache-shared-opac-plack.conf
diff --git a/debian/templates/apache-shared-intranet-plack.conf b/debian/templates/apache-shared-intranet-plack.conf
new file mode 100644
index 0000000..d591a00
--- /dev/null
+++ b/debian/templates/apache-shared-intranet-plack.conf
@@ -0,0 +1,25 @@
+# Apache configuration settings that are shared for every Koha instance.
+# This file contains settings for the Plack configuration of the intranet.
+#
+# This file should be included from an instance's
+# /etc/apache2/site-available file, from within the VirtualHost section
+# for the intranet.
+
+# Plack is only available out-of-the-box for Apache 2.4.7+ setups
+<IfVersion >= 2.4>
+ <IfModule mod_proxy_http.c>
+
+ ProxyPreserveHost On
+
+ # RequestHeader set X-FORWARDED-PROTO "https"
+
+ # Point the intranet site to Plack
+ ProxyPass /cgi-bin/koha "unix:/var/run/koha/${instance}/plack.sock|http://localhost/intranet"
+ ProxyPassReverse /cgi-bin/koha "unix:/var/run/koha/${instance}/plack.sock|http://localhost/intranet"
+
+ # Point the /api endpoint to Plack
+ # ProxyPass /api "unix:/var/run/koha/${instance}/plack.sock|http://localhost/api"
+ # ProxyPassReverse /api "unix:/var/run/koha/${instance}/plack.sock|http://localhost/api"
+
+ </IfModule>
+</IfVersion>
diff --git a/debian/templates/apache-shared-opac-plack.conf b/debian/templates/apache-shared-opac-plack.conf
new file mode 100644
index 0000000..80e69ac
--- /dev/null
+++ b/debian/templates/apache-shared-opac-plack.conf
@@ -0,0 +1,25 @@
+# Apache configuration settings that are shared for every Koha instance.
+# This file contains settings for the Plack configuration of the OPAC.
+#
+# This file should be included from an instance's
+# /etc/apache2/site-available file, from within the VirtualHost section
+# for the OPAC.
+
+# Plack is only available out-of-the-box for Apache 2.4.7+ setups
+<IfVersion >= 2.4>
+ <IfModule mod_proxy_http.c>
+
+ ProxyPreserveHost On
+
+ # RequestHeader set X-FORWARDED-PROTO "https"
+
+ # Point the intranet site to Plack
+ ProxyPass /cgi-bin/koha/opac "unix:/var/run/koha/${instance}/plack.sock|http://localhost/opac"
+ ProxyPassReverse /cgi-bin/koha/opac "unix:/var/run/koha/${instance}/plack.sock|http://localhost/opac"
+
+ # Point the /api endpoint to Plack
+ # ProxyPass /api "unix:/var/run/koha/${instance}/plack.sock|http://localhost/api"
+ # ProxyPassReverse /api "unix:/var/run/koha/${instance}/plack.sock|http://localhost/api"
+
+ </IfModule>
+</IfVersion>
diff --git a/debian/templates/apache-site.conf.in b/debian/templates/apache-site.conf.in
index dd30bc6..73d9201 100644
--- a/debian/templates/apache-site.conf.in
+++ b/debian/templates/apache-site.conf.in
@@ -2,8 +2,12 @@
# OPAC
<VirtualHost *:__OPACPORT__>
+ <IfVersion >= 2.4>
+ Define instance "__KOHASITE__"
+ </IfDefine>
Include /etc/koha/apache-shared.conf
# Include /etc/koha/apache-shared-disable.conf
+# Include /etc/koha/apache-shared-opac-plack.conf
Include /etc/koha/apache-shared-opac.conf
ServerName __OPACSERVER__
@@ -19,8 +23,12 @@
# Intranet
<VirtualHost *:__INTRAPORT__>
+ <IfVersion >= 2.4>
+ Define instance "__KOHASITE__"
+ </IfDefine>
Include /etc/koha/apache-shared.conf
# Include /etc/koha/apache-shared-disable.conf
+# Include /etc/koha/apache-shared-intranet-plack.conf
Include /etc/koha/apache-shared-intranet.conf
ServerName __INTRASERVER__
--
2.5.0
More information about the Koha-patches
mailing list