# 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. # 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" ProxyPass ajp://localhost:8009/webapp/default ProxyPassReverse http://www.example.com/lenya/customer ProxyPassReverseCookiePath /webapp/default /lenya/customer # handle global Lenya resource requests ProxyPass ajp://localhost:8009/webapp ProxyPassReverse http://www.example.com/lenya ProxyPassReverseCookiePath /webapp /lenya 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 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" ProxyPass ajp://localhost:8009/webapp/default ProxyPassReverse https://www.example.com/lenya/customer ProxyPassReverseCookiePath /webapp/default /lenya/customer # handle global Lenya resource requests ProxyPass ajp://localhost:8009/webapp ProxyPassReverse https://www.example.com/lenya ProxyPassReverseCookiePath /webapp /lenya 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 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: # 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 / # handle global Lenya resource requests # 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 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