Skip to main content
Version: QB10

Running Behind Apache

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 has been enabled. If you haven't, you may enable it by running command:
    a2enmod proxy_http
  • You run your QuickBuild instance at http://localhost:8810, and you want site https://build.example.com on the regular port (80) available after configuring the mod_proxy.

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:

<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

ProxyRequests Off

# 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>

Then, we can enable this configuration and restart the apache server:

# a2ensite build.example.com.conf
# /etc/init.d/apache2 reload

That is it.