blob: e7fdbc2775a9d28a6aae000a02257bfd5add13b8 [file] [log] [blame]
# Lenya proxy testing environment for Apache HTTPD 2.2.x
NameVirtualHost 127.0.0.1:80
LoadModule rewrite_module /usr/lib/apache2/mod_rewrite.so
LoadModule proxy_module /usr/lib/apache2/mod_proxy.so
LoadModule proxy_ajp_module /usr/lib/apache2/mod_proxy_ajp.so
#
# NOTE: This apache config file should give you a working proxy setup.
# However, it may not be the most elegant/effective/robust. Please
# contribute your own experience, so that we can establish a set of
# best practices for proxied production setups.
#
<VirtualHost www.example.com:80>
ServerAdmin lenyatest@www.example.com
ServerAlias www.example.com www
DocumentRoot /srv/www/htdocs
HostnameLookups Off
UseCanonicalName Off
ServerSignature On
RewriteEngine On
ProxyRequests Off
# force SSL protection for authoring:
# better to disable this during testing as it can create confusion wrt Lenya's own redirects.
# RewriteRule ^/lenya/(.*)/authoring/(.*) https://www.example.com/lenya/$1/authoring/$2 [R]
# map official name "customer" to publication id "default"
<Location /lenya/customer>
ProxyPass ajp://localhost:8009/webapp/default
ProxyPassReverse http://www.example.com/lenya/customer
ProxyPassReverseCookiePath /webapp/default /lenya/customer
</Location>
# handle global Lenya resource requests
<Location /lenya>
ProxyPass ajp://localhost:8009/webapp
ProxyPassReverse http://www.example.com/lenya
ProxyPassReverseCookiePath /webapp /lenya
</Location>
ErrorLog /tmp/LenyaTest_www.example.com-errors
CustomLog /tmp/LenyaTest_www.example.com-access combined
RewriteLogLevel 4
RewriteLog /tmp/LenyaTest_www.example.com-rewrite.log
</VirtualHost>
<IfDefine SSL>
<IfDefine !NOSSL>
<VirtualHost www.example.com:443>
SSLEngine on
SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
SSLCertificateFile /tmp/proxy-ssl-cert.pem
SSLCertificateKeyFile /tmp/proxy-ssl-key.pem
ServerAdmin lenyatest@www.example.com
ServerAlias www.example.com www
DocumentRoot /srv/www/htdocs
HostnameLookups Off
UseCanonicalName Off
ServerSignature On
RewriteEngine On
ProxyRequests Off
# map official name "customer" to publication id "default"
<Location /lenya/customer>
ProxyPass ajp://localhost:8009/webapp/default
ProxyPassReverse https://www.example.com/lenya/customer
ProxyPassReverseCookiePath /webapp/default /lenya/customer
</Location>
# handle global Lenya resource requests
<Location /lenya>
ProxyPass ajp://localhost:8009/webapp
ProxyPassReverse https://www.example.com/lenya
ProxyPassReverseCookiePath /webapp /lenya
</Location>
ErrorLog /tmp/LenyaTest_www.example.com-SSL-errors
CustomLog /tmp/LenyaTest_www.example.com-SSL-access combined
RewriteLogLevel 4
RewriteLog /tmp/LenyaTest_www.example.com-SSL-rewrite.log
</VirtualHost>
</IfDefine>
</IfDefine>
<VirtualHost customer.example.com:80>
ServerAdmin webmaster@customer.example.com
ServerAlias customer.example.com customer
DocumentRoot /srv/www/htdocs
HostnameLookups Off
UseCanonicalName Off
ServerSignature On
RewriteEngine On
ProxyRequests Off
# catch funky addresses with "/"s and "."s to make
# cocoon matching behave like apache (where "foo/" and "foo" and "/./foo" all do the same):
# FIXME: could use some review and better documentation. Does this have security implications as well?
# RewriteRule ^/([^/\.]+)$ $1/ [R]
# all requests to customer.example.com are passed to the live area:
<Location />
# fixme: the trailing slash seems necessary here. looks like an inconsistency in our matchers...
ProxyPass ajp://localhost:8009/webapp/default/live/
ProxyPassReverse http://customer.example.com
ProxyPassReverseCookiePath /webapp/default/live /
</Location>
# handle global Lenya resource requests
<Location /lenya>
# fixme: the trailing slash seems necessary here. looks like an inconsistency in our matchers...
ProxyPass ajp://localhost:8009/webapp/
ProxyPassReverse http://www.example.com/lenya
ProxyPassReverseCookiePath /webapp /lenya
</Location>
ErrorLog /tmp/LenyaTest_customer.example.com-errors
CustomLog /tmp/LenyaTest_customer.example.com-access combined
RewriteLogLevel 4
RewriteLog /tmp/LenyaTest_customer.example.com-rewrite.log
</VirtualHost>