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]
admin created
workshops:apache_virtual_hosts [2017/10/12 21:58] (current)
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 (external edit)