Running Behind Apache

Version 5 by Robin Shen
on Sep 22, 2010 14:14.


compared with
Current by Robin Shen
on Sep 23, 2010 12:57.


 
Key
These lines were removed. This word was removed.
These lines were added. This word was added.

View page history


There are 5 changes. View first change.

 h2. Introduction
 You may want to run your QuickBuild instance behind Apache for some reasons. To do so, the following situations are assumed:
 * The following commands are Ubuntu specified, if you are running on other platform, please reference the apache documents on your platform.
 * An existing Apache web server has been set up already.
 * [mod_proxy|http://httpd.apache.org/docs/2.0/mod/mod_proxy.html] has been enabled. If you haven't, you may enable it by running command:
  a2enmod proxy
 * You run your QuickBuild instance at http://localhost:8810, and you want site http://build.example.com on the regular port (80) available after configuring the mod_proxy.
  
 h2. Configure your apache
 Create a file named build.example.com.conf at your apache configurations directory: your_apache_home/conf/sites-available and edit it by adding below lines:
 {code}
 <VirtualHost *:80>
  # if you are configuring reverse proxy with https enabled, make sure to prepend the ServerName
  # directive with "https://" schema, for example: https://build.example.com:443
  ServerName build.example.com
  
ErrorLog /var/log/apache2/error-quickbuild.log
  LogLevel warn
  
  ProxyRequests Off
ProxyPreserveHost On
  
# turn off this option. We will rely on ProxyPassReverse to translate
  # urls in Http response headers.
  ProxyPreserveHost Off
  
  <Proxy *>
  Order deny,allow
  Allow from all
  </Proxy>
  
  ProxyPass / http://localhost:8810/
  ProxyPassReverse / http://localhost:8810/
  
  <Location />
  Order allow,deny
  Allow from all
  </Location>
  
  ErrorLog /var/log/apache2/quickbuild-error.log
  CustomLog /var/log/apache2/quickbuild-access.log combined
  LogLevel warn
 </VirtualHost>
 {code}
  
 Then, we can enable this configuration and restart the apache server:
 {code}
 # a2ensite build.example.com.conf
 # /etc/init.d/apache2 reload
 {code}
  
 That is it.