Unlike Apache 1.3, Apache 2 requires more than one module for mod_proxy functionality. Apache 1.3 requires only mod_proxy for basic proxy support. Apache 2 requires mod_proxy in addition to protocol-specific modules depending on the type of proxying required:
LoadModule proxy_module /path/to/mod_proxy.so
LoadModule proxy_http_module /path/to/mod_proxy_http.so
ProxyRequests off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
<VirtualHost *:80>
ServerName localhost
UseCanonicalName Off
ProxyPass /other/ http://otherserver:8888/
<Location /other/>
ProxyPassReverse /
</Location>
</VirtualHost>
apachemod_proxyvirtualhost
If you want to take your site down for maintenance, but leave your webmail portal active on Sundays, you could put this in either your <VirtualHost> block or in an .htaccess file for your site:
RewriteEngine on
RewriteCond %{TIME_WDAY} 0
RewriteRule !^/mail.* https://path/to/your/maint/page.html
apacheconfigurationhtaccessmod_rewriterewritevirtualhost
Some virtual mapping goodness:
<VirtualHost *> ServerName cprogrammer.org ServerAlias cprogrammer.org *.cprogrammer.org # See the docs for the %-specs; %1 maps to the first part of the # domain (a.b.c.d.e -> a, a.b.c -> a) VirtualDocumentRoot /users/%1/public_html VirtualScriptAlias /users/%1/public_html/cgi-bin/ </VirtualHost>
apacheconfigurationmappingneatvirtualhost