Template:ApacheOXConf: Difference between revisions
From Open-Xchange
No edit summary |
No edit summary |
||
| Line 7: | Line 7: | ||
<IfModule mod_proxy_ajp.c> | <IfModule mod_proxy_ajp.c> | ||
ProxyRequests Off | ProxyRequests Off | ||
<Proxy balancer:// | <Proxy balancer://oxcluster> | ||
Order deny,allow | Order deny,allow | ||
allow from all | allow from all | ||
# none single server setups need to have the hostname inserted in stead localhost | |||
BalancerMember ajp://localhost:8009 smax=0 ttl=60 retry=60 loadfactor=50 route=OX1 | BalancerMember ajp://localhost:8009 smax=0 ttl=60 retry=60 loadfactor=50 route=OX1 | ||
# Enable and maybe add additional hosts running OX here | # Enable and maybe add additional hosts running OX here | ||
| Line 16: | Line 17: | ||
</Proxy> | </Proxy> | ||
<Proxy /ajax> | <Proxy /ajax> | ||
ProxyPass balancer:// | ProxyPass balancer://oxcluster/ajax | ||
</Proxy> | </Proxy> | ||
<Proxy /axis2> | <Proxy /axis2> | ||
ProxyPass balancer:// | ProxyPass balancer://oxcluster/axis2 | ||
</Proxy> | </Proxy> | ||
<Proxy /servlet> | <Proxy /servlet> | ||
ProxyPass balancer:// | ProxyPass balancer://oxcluster/servlet | ||
</Proxy> | </Proxy> | ||
<Proxy /infostore> | <Proxy /infostore> | ||
ProxyPass balancer:// | ProxyPass balancer://oxcluster/infostore | ||
</Proxy> | </Proxy> | ||
<Proxy /publications> | <Proxy /publications> | ||
ProxyPass balancer:// | ProxyPass balancer://oxcluster/publications | ||
</Proxy> | </Proxy> | ||
<Proxy /Microsoft-Server-ActiveSync> | <Proxy /Microsoft-Server-ActiveSync> | ||
ProxyPass balancer:// | ProxyPass balancer://oxcluster/Microsoft-Server-ActiveSync | ||
</Proxy> | </Proxy> | ||
<Proxy /usm-json> | <Proxy /usm-json> | ||
ProxyPass balancer:// | ProxyPass balancer://oxcluster/usm-json | ||
</Proxy> | </Proxy> | ||
</IfModule> | </IfModule> | ||
Revision as of 06:44, 4 March 2011
Configure the mod_proxy_ajp module by creating a new Apache configuration file.
$ vim {{{ajpconf}}}
{{{loadmodule}}}
<IfModule mod_proxy_ajp.c>
ProxyRequests Off
<Proxy balancer://oxcluster>
Order deny,allow
allow from all
# none single server setups need to have the hostname inserted in stead localhost
BalancerMember ajp://localhost:8009 smax=0 ttl=60 retry=60 loadfactor=50 route=OX1
# Enable and maybe add additional hosts running OX here
# BalancerMember ajp://oxhost2:8009 smax=0 ttl=60 retry=60 loadfactor=50 route=OX2
ProxySet stickysession=JSESSIONID timeout=70
</Proxy>
<Proxy /ajax>
ProxyPass balancer://oxcluster/ajax
</Proxy>
<Proxy /axis2>
ProxyPass balancer://oxcluster/axis2
</Proxy>
<Proxy /servlet>
ProxyPass balancer://oxcluster/servlet
</Proxy>
<Proxy /infostore>
ProxyPass balancer://oxcluster/infostore
</Proxy>
<Proxy /publications>
ProxyPass balancer://oxcluster/publications
</Proxy>
<Proxy /Microsoft-Server-ActiveSync>
ProxyPass balancer://oxcluster/Microsoft-Server-ActiveSync
</Proxy>
<Proxy /usm-json>
ProxyPass balancer://oxcluster/usm-json
</Proxy>
</IfModule>
Modify the default website settings to display the Open-Xchange GUI
For versions of Open-Xchange starting with 6.18:
$ vim {{{apacheconf}}}
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot {{{docroot}}}
<Directory {{{docroot}}}>
AllowOverride None
Order allow,deny
allow from all
RedirectMatch ^/$ /ox6/
Options +FollowSymLinks +SymLinksIfOwnerMatch
</Directory>
# deflate
AddOutputFilterByType DEFLATE text/html text/plain text/javascript application/javascript text/css text/xml application/xml text/x-js application/x-javascript
# pre-compressed files
AddType text/javascript .jsz
AddType text/css .cssz
AddType text/xml .xmlz
AddEncoding gzip .jsz .cssz .xmlz
SetEnvIf Request_URI "\.(jsz|cssz|xmlz)$" no-gzip
ExpiresActive On
<Location /ox6>
# Expires (via ExpiresByType to override global settings)
ExpiresByType image/gif "access plus 6 months"
ExpiresByType image/png "access plus 6 months"
ExpiresByType image/jpg "access plus 6 months"
ExpiresByType image/jpeg "access plus 6 months"
ExpiresByType text/css "access plus 6 months"
ExpiresByType text/html "access plus 6 months"
ExpiresByType text/xml "access plus 6 months"
ExpiresByType text/javascript "access plus 6 months"
ExpiresByType text/x-js "access plus 6 months"
ExpiresByType application/x-javascript "access plus 6 months"
ExpiresDefault "access plus 6 months"
Header append Cache-Control "private"
Header unset Last-Modified
Header unset Vary
# Strip version
RewriteEngine On
RewriteRule v=\w+/(.+) $1 [L]
# Turn off ETag
Header unset ETag
FileETag None
</Location>
<Location /ox6/ox.html>
ExpiresByType text/html "now"
ExpiresDefault "now"
Header unset Last-Modified
Header set Cache-Control "no-store, no-cache, must-revalidate, post-check=0, pre-check=0"
# Turn off ETag
Header unset ETag
FileETag None
</Location>
<Location /ox6/index.html>
ExpiresByType text/html "now"
ExpiresDefault "now"
Header unset Last-Modified
Header set Cache-Control "no-store, no-cache, must-revalidate, post-check=0, pre-check=0"
# Turn off ETag
Header unset ETag
FileETag None
</Location>
</VirtualHost>
For versions of Open-Xchange prior to 6.18:
$ vim {{{apacheconf}}}
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot {{{docroot}}}
<Directory {{{docroot}}}>
AllowOverride None
Order allow,deny
allow from all
RedirectMatch ^/$ /ox6/
</Directory>
ExpiresActive On
ExpiresByType image/gif "access plus 23 hours"
ExpiresByType image/png "access plus 23 hours"
ExpiresByType image/jpg "access plus 23 hours"
ExpiresByType image/jpeg "access plus 23 hours"
ExpiresByType text/javascript "access plus 23 hours"
ExpiresByType text/css "access plus 23 hours"
ExpiresByType text/html "access plus 23 hours"
ExpiresByType application/x-javascript "access plus 23 hours"
<Files ~ "\.(js|css|gif|jpe?g|png)$">
Header append Cache-Control "public"
</Files>
DeflateFilterNote ratio
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/x-js application/x-javascript application/javascript
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
Header append Vary User-Agent env=!dont-vary
</VirtualHost>