Difference between revisions of "Template:ApacheAppSuiteConf"

Line 1: Line 1:
 
Configure the ''mod_proxy_{{#if:{{{connector|}}}|{{{connector}}}|ajp}}'' module by creating a new Apache configuration file.
 
Configure the ''mod_proxy_{{#if:{{{connector|}}}|{{{connector}}}|ajp}}'' module by creating a new Apache configuration file.
 
+
 
  $ vim {{#if:{{{connectorConf|}}}|{{{connectorConf}}}|{{{ajpconf}}}}}
 
  $ vim {{#if:{{{connectorConf|}}}|{{{connectorConf}}}|{{{ajpconf}}}}}
  
Line 12: Line 12:
 
     # Allow from 192.168 10 172.16
 
     # Allow from 192.168 10 172.16
 
  </Location>
 
  </Location>
 
+
 
  # the old path is kept for compatibility reasons
 
  # the old path is kept for compatibility reasons
 
  <Location /servlet/axis2/services>
 
  <Location /servlet/axis2/services>
Line 22: Line 22:
 
     # Allow from 192.168 10 172.16
 
     # Allow from 192.168 10 172.16
 
  </Location>
 
  </Location>
 
+
 
  {{{loadmodule}}}
 
  {{{loadmodule}}}
 
+
 
  <IfModule mod_proxy_{{#if:{{{connector|}}}|{{{connector}}}|ajp}}.c>
 
  <IfModule mod_proxy_{{#if:{{{connector|}}}|{{{connector}}}|ajp}}.c>
 
     ProxyRequests Off
 
     ProxyRequests Off
Line 46: Line 46:
 
         ProxyPass balancer://oxcluster/ajax
 
         ProxyPass balancer://oxcluster/ajax
 
     </Proxy>
 
     </Proxy>
 
+
 
     # OX frontend
 
     # OX frontend
 
     <Proxy /ajax>
 
     <Proxy /ajax>
Line 86: Line 86:
 
  <VirtualHost *:80>
 
  <VirtualHost *:80>
 
         ServerAdmin webmaster@localhost
 
         ServerAdmin webmaster@localhost
 
+
 
         DocumentRoot {{#if:{{{docroot|}}}|{{{docroot}}}|/var/www}}
 
         DocumentRoot {{#if:{{{docroot|}}}|{{{docroot}}}|/var/www}}
 
         <Directory {{#if:{{{docroot|}}}|{{{docroot}}}|/var/www}}>
 
         <Directory {{#if:{{{docroot|}}}|{{{docroot}}}|/var/www}}>
Line 95: Line 95:
 
                 RedirectMatch ^/$ /appsuite/
 
                 RedirectMatch ^/$ /appsuite/
 
         </Directory>
 
         </Directory>
 
+
 
         <Directory {{#if:{{{docroot|}}}|{{{docroot}}}/appsuite|/var/www/appsuite}}>
 
         <Directory {{#if:{{{docroot|}}}|{{{docroot}}}/appsuite|/var/www/appsuite}}>
 
                 Options None +SymLinksIfOwnerMatch
 
                 Options None +SymLinksIfOwnerMatch
 
                 AllowOverride Indexes FileInfo
 
                 AllowOverride Indexes FileInfo
 
         </Directory>
 
         </Directory>
 
+
 
         ErrorLog ${APACHE_LOG_DIR}/error.log
 
         ErrorLog ${APACHE_LOG_DIR}/error.log
 
+
 
         # Possible values include: debug, info, notice, warn, error, crit,
 
         # Possible values include: debug, info, notice, warn, error, crit,
 
         # alert, emerg.
 
         # alert, emerg.
 
         LogLevel warn
 
         LogLevel warn
 
+
 
         CustomLog ${APACHE_LOG_DIR}/access.log combined
 
         CustomLog ${APACHE_LOG_DIR}/access.log combined
 
  </VirtualHost><noinclude>
 
  </VirtualHost><noinclude>
 
{{Template:ApacheAppSuiteConf/doc}}
 
{{Template:ApacheAppSuiteConf/doc}}
 
</noinclude>
 
</noinclude>

Revision as of 09:50, 22 July 2013

Configure the mod_proxy_ajp module by creating a new Apache configuration file.

$ vim {{{ajpconf}}}
# Please note that the servlet path to the soap API has changed:
<Location /webservices>
    # restrict access to the soap provisioning API
    Order Deny,Allow
    Deny from all
    Allow from 127.0.0.1
    # you might add more ip addresses / networks here
    # Allow from 192.168 10 172.16
</Location>

# the old path is kept for compatibility reasons
<Location /servlet/axis2/services>
    # restrict access to the soap provisioning API
    Order Deny,Allow
    Deny from all
    Allow from 127.0.0.1
    # you might add more ip addresses / networks here
    # Allow from 192.168 10 172.16
</Location>

{{{loadmodule}}}

<IfModule mod_proxy_ajp.c>
   ProxyRequests Off
   
   <Proxy balancer://oxcluster>
       Order deny,allow
       Allow from all
       # multiple server setups need to have the hostname inserted instead localhost
       BalancerMember ajp://localhost:8009 timeout=100 smax=0 ttl=60 retry=60 loadfactor=50 route=OX1
       # Enable and maybe add additional hosts running OX here
       # BalancerMember ajp://oxhost2:8009 timeout=100  smax=0 ttl=60 retry=60 loadfactor=50 route=OX2
      ProxySet stickysession=JSESSIONID|jsessionid scolonpathdelim=On
      
   </Proxy>
   
   # OX AppSuite frontend
   <Proxy /appsuite/api>
       ProxyPass balancer://oxcluster/ajax
   </Proxy>

   # OX frontend
   <Proxy /ajax>
       ProxyPass balancer://oxcluster/ajax
   </Proxy>
   <Proxy /servlet>
       ProxyPass balancer://oxcluster/servlet
   </Proxy>
   <Proxy /infostore>
       ProxyPass balancer://oxcluster/infostore
   </Proxy>
   <Proxy /publications>
       ProxyPass balancer://oxcluster/publications
   </Proxy>
   # USM
   <Proxy /usm-json>
       ProxyPass balancer://oxcluster/usm-json
   </Proxy>
   # SOAP
   <Proxy /webservices>
       ProxyPass balancer://oxcluster/webservices
  </Proxy>
  
   # OXtender
   <Proxy /Microsoft-Server-ActiveSync>
       ProxyPass balancer://oxcluster/Microsoft-Server-ActiveSync
   </Proxy>
</IfModule>


Modify the default website settings to display the Open-Xchange GUI

$ vim {{{apacheconf}}}
<VirtualHost *:80>
       ServerAdmin webmaster@localhost

       DocumentRoot /var/www
       <Directory /var/www>
               Options Indexes FollowSymLinks MultiViews
               AllowOverride None
               Order allow,deny
               allow from all
               RedirectMatch ^/$ /appsuite/
       </Directory>

       <Directory /var/www/appsuite>
               Options None +SymLinksIfOwnerMatch
               AllowOverride Indexes FileInfo
       </Directory>

       ErrorLog ${APACHE_LOG_DIR}/error.log

       # Possible values include: debug, info, notice, warn, error, crit,
       # alert, emerg.
       LogLevel warn

       CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Usage

Parameters used by this template

connector
ajp or http, fallback to ajp if empty
connectorConf
path to the configuration file of the chosen connector, fallback to ajpConf (deprecated)
loadmodule
Loadmodule directive needed for apache on RedHat based distros e.g.: LoadModule proxy_http_module modules/mod_proxy_http.so
apacheconf
path to the config file of the default apache vhost(http)
docroot
path to the apache docroot, fallback to /var/www
easProxyName
the proxyName to use for the eas specific proxy container, only when using http for the connector parameter

See also

Template:ApacheAppSuiteConf/testcases