Apache Virtual Host with directory aliases

apache-2.2virtualdirectoriesvirtualhost

I'm trying to set up a dynamic virtual host in apache with a directory alias pointing to a difirent path for every domain.

Here's what I'm trying to achive.

Say I have 2 domains:

* www.domain1.com
* www.domein2.com

I want both to point to the same index.php file (C:/cms/index.php). Now the hard part … I want directories or certain file types to point to a diffirent path for each domain.

Example:

* www.domain1.com/layout -> C:/store/www.domain1.com/layout
* www.domain2.com/layout -> C:/store/www.domain2.com/layout
* www.domain1.com/image.png -> C:/store/www.domain1.com/image.png
* www.domain2.com/image.png -> C:/store/www.domain2.com/image.png

However the admin directory should point to the same path again for all sites

* www.domain1.com/admin -> C:/cms/admin
* www.domain2.com/admin -> C:/cms/admin

Is there a way to achieve this kind of behaviour in apache 2.2 without having to create a virtualhost entry for each new domain?

Best Answer

Try:

DocumentRoot "C:/store/"

<Directory />
    ....
    RewriteEngine on
    RewriteCond %{REMOTE_HOST}  ^www.domain1.com$
    RewriteRule (.*)$ /www.domain1.com/$1 [L]

    RewriteCond %{REMOTE_HOST}  ^www.domain2.com$
    RewriteRule (.*)$ /www.domain1.com/$1 [L]
</Directory> 

Alias /admin C:\cms\admin

<Directory "C:\cms\admin">
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory> 
Related Topic