User Tools

Site Tools


workshops:apache_virtual_hosts

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
workshops:apache_virtual_hosts [2009/07/19 11:24] – created adminworkshops:apache_virtual_hosts [2017/10/12 21:58] (current) – external edit 127.0.0.1
Line 4: Line 4:
 Date: 29th May, 2009 Date: 29th May, 2009
  
-Setting up Virtual Hosts under Apache.+===== Setting up Virtual Hosts under Apache. ===== 
 + 
 + 
 + 
 +Make sure that the module you need is available. 
 + 
 +So first of all we need to check the directory of available modules to see if we have a copy of module vhosts_alias 
 + 
 +  ls /etc/apache2/mods-available/ 
 + 
 +<code> 
 +actions.conf 
 +actions.load 
 +alias.conf 
 +alias.load 
 +asis.load 
 +auth_basic.load 
 +auth_digest.load 
 +authn_alias.load 
 +authn_anon.load 
 +authn_dbd.load 
 +authn_dbm.load 
 +authn_default.load 
 +authn_file.load 
 +authnz_ldap.load 
 +authz_dbm.load 
 +authz_default.load 
 +authz_groupfile.load 
 +authz_host.load 
 +authz_owner.load 
 +authz_user.load 
 +autoindex.conf 
 +autoindex.load 
 +cache.load 
 +cern_meta.load 
 +cgi.load 
 +cgid.conf 
 +cgid.load 
 +charset_lite.load 
 +dav.load 
 +dav_fs.conf 
 +dav_fs.load 
 +dav_lock.load 
 +dbd.load 
 +deflate.conf 
 +deflate.load 
 +dir.conf 
 +dir.load 
 +disk_cache.conf 
 +disk_cache.load 
 +dump_io.load 
 +env.load 
 +expires.load 
 +ext_filter.load 
 +file_cache.load 
 +filter.load 
 +headers.load 
 +ident.load 
 +imagemap.load 
 +include.load 
 +info.conf 
 +info.load 
 +ldap.load 
 +log_forensic.load 
 +mem_cache.conf 
 +mem_cache.load 
 +mime.conf 
 +mime.load 
 +mime_magic.conf 
 +mime_magic.load 
 +negotiation.conf 
 +negotiation.load 
 +perl.load 
 +php5.conf 
 +php5.load 
 +proxy.conf 
 +proxy.load 
 +proxy_ajp.load 
 +proxy_balancer.load 
 +proxy_connect.load 
 +proxy_ftp.load 
 +proxy_http.load 
 +python.load 
 +rewrite.load 
 +setenvif.conf 
 +setenvif.load 
 +speling.load 
 +ssl.conf 
 +ssl.load 
 +status.conf 
 +status.load 
 +substitute.load 
 +suexec.load 
 +unique_id.load 
 +userdir.conf 
 +userdir.load 
 +usertrack.load 
 +version.load 
 +vhost_alias.load # this is mod_vhost_alias 
 +</code> 
 + 
 +Next we need to tell apache2 to load the vhosts_alias module 
 + 
 +  ls /etc/apache2/mods-enabled/ 
 + 
 +<code> 
 +alias.conf 
 +alias.load 
 +auth_basic.load 
 +authn_file.load 
 +authz_default.load 
 +authz_groupfile.load 
 +authz_host.load 
 +authz_user.load 
 +autoindex.conf 
 +autoindex.load 
 +cgi.load 
 +deflate.conf 
 +deflate.load 
 +dir.conf 
 +dir.load 
 +env.load 
 +mime.conf 
 +mime.load 
 +negotiation.conf 
 +negotiation.load 
 +perl.load 
 +php5.conf 
 +php5.load 
 +python.load 
 +setenvif.conf 
 +setenvif.load 
 +status.conf 
 +status.load 
 +vhost_alias.load # make sure it's enabled 
 +</code> 
 + 
 +Now we need to setup the enabled sites file to include all the virtual hosts we will be adding. 
 + 
 + 
 +  cat /etc/apache2/sites-enabled/000-default 
 + 
 +<code> 
 +<VirtualHost *:80> # set the port number here 
 + ServerAdmin webmaster@localhost 
 +  
 + DocumentRoot /var/www/ 
 + <Directory /> 
 + Options FollowSymLinks 
 + AllowOverride None 
 + </Directory> 
 + <Directory /var/www/> 
 + Options Indexes FollowSymLinks MultiViews 
 + AllowOverride AuthConfig 
 + Order allow,deny 
 + allow from all 
 + </Directory> 
 + UseCanonicalName Off # 
 + VirtualDocumentRoot /var/www/%0/ # this is the asked for URL 
 + 
 + ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ 
 + <Directory "/usr/lib/cgi-bin"> 
 + AllowOverride None 
 + Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch 
 + Order allow,deny 
 + Allow from all 
 + </Directory> 
 + 
 + ErrorLog /var/log/apache2/error.log 
 + 
 + # Possible values include: debug, info, notice, warn, error, crit, 
 + # alert, emerg. 
 + LogLevel warn 
 + 
 + CustomLog /var/log/apache2/access.log combined 
 + 
 +    Alias /doc/ "/usr/share/doc/" 
 +    <Directory "/usr/share/doc/"> 
 +        Options Indexes MultiViews FollowSymLinks 
 +        AllowOverride None 
 +        Order deny,allow 
 +        Deny from all 
 +        Allow from 127.0.0.0/255.0.0.0 ::1/128 
 +    </Directory> 
 + 
 +</VirtualHost> 
 +</code> 
 + 
 +Including VirtualDocumentRoot /var/www/%0/ in the enabled sites file tells apache2 that is is to do directory expansion adding the asked for URL to the normal DocumentRoot directory. 
 + 
 +<code> 
 +ls -la /var/www 
 +total 24  
 +drwxrwxr-x  5 root   robert 4096 May 29 20:33 .  
 +drwxr-xr-x 14 root   root   4096 Jan  3 13:29 ..  
 +lrwxrwxrwx  1 root   root     25 Jan 19 19:03 172.16.0.104 -> lampp/djelectro/postcode/ # local Virtual host 
 +lrwxrwxrwx  1 root   root     22 Jan 19 19:02 ares -> ares.going-places.org/ # local Virtual host 
 +lrwxrwxrwx  1 robert robert    8 May 26 14:09 ares-ext -> external # local Virtual host 
 +drwxr-xr-x 25 robert robert 4096 May 31 14:45 ares.going-places.org # local Virtual host 
 +drwxr-xr-x  5 robert robert 4096 May 31 14:47 external # directory for external access 
 +lrwxrwxrwx  1 robert robert   18 Jan 24 23:29 going-places.dyndns.org -> /var/www/external/ # dyndns Virtual host 
 +lrwxrwxrwx  1 robert robert   34 Jan 24 23:29 going-places.webhop.net -> /var/www/lampp/djelectro/postcode/ # dyndns Virtual host 
 +-rw-r--r--  1 robert robert   45 Dec 10 00:17 index.html  
 +drwxr-xr-x  7 robert robert 4096 Jan  8 18:39 lampp  
 +lrwxrwxrwx  1 robert robert   17 May 25 21:02 mywebspace.dyndns.org -> /var/www/external # dyndns Virtual host 
 +lrwxrwxrwx  1 robert robert   17 May 26 13:54 pastebin.dyndns.org -> /var/www/external # dyndns Virtual host 
 +lrwxrwxrwx  1 robert robert   18 Feb  3 12:51 www.going-places.dyndns.org -> /var/www/external/ # dyndns Virtual host 
 +lrwxrwxrwx  1 robert robert   34 Feb  3 12:48 www.going-places.webhop.net -> /var/www/lampp/djelectro/postcode/ # dyndns Virtual host 
 +lrwxrwxrwx  1 root   root     16 Jan 19 19:04 www.intra.net -> lampp/djelectro/ # local Virtual host 
 +lrwxrwxrwx  1 robert robert   17 May 25 21:02 www.mywebspace.dyndns.org -> /var/www/external # dyndns Virtual host 
 +lrwxrwxrwx  1 robert robert   17 May 26 13:54 www.pastebin.dyndns.org -> /var/www/external # dyndns Virtual host 
 +</code> 
 + 
 + 
 +As you can see, now all you have to do is put links to your directories  
 +in URL format and it all "just works". ;)
  
-Files will be included soon. 
workshops/apache_virtual_hosts.txt · Last modified: 2017/10/12 21:58 by 127.0.0.1