Apache2 Dynamic vHost with multiple ServerAlias

I am trying to set up a dynamic vHost but ran into some problems. This will prevent me from installing multiple ServerAlias.

<VirtualHost *:80>
        ServerAlias *.com
        ServerAdmin michael.ian.curry@gmail.com
        VirtualDocumentRoot /var/www/%1/production/html
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory /var/www/>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride All
                Order allow,deny
                allow from all
        </Directory>
        LogLevel warn
</VirtualHost>

      

The above vHost only works for ".com", I need it to work for "www..com" and "* .com" I assumed installing ServerAlias ​​would fix it, but it doesn't work.

ServerAlias *.com www.*.com

      

If you have any understanding please answer

- MichaelCurry

== EDIT 1 ==

Example: redcrusher.com and www.redcrusher.com

== EDIT 2 ==

The code below doesn't work.

ServerAlias www.*.com *.com

      

+3


source to share


2 answers


It revealed!

'www. *. com 'must run before' * .com '. This is because ServerAlias ​​sets up a dynamic domain and must exist before the "less" alias exists.

Example: 'www. *. com ',' dev. *. com ',' asdf. *. com 'THEN' * .com '

vHost File [production.conf]:



<VirtualHost *:80>
    ServerAlias www.*.com
    VirtualDocumentRoot /var/www/%2/production/html
    ServerAdmin michael.ian.curry@gmail.com
    <Directory />
        Options FollowSymLinks
        AllowOverride None
    </Directory>
    <Directory /var/www/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>

    LogLevel warn
</VirtualHost>

<VirtualHost *:80>
    ServerAlias *.com
    VirtualDocumentRoot /var/www/%1/production/html
    ServerAdmin michael.ian.curry@gmail.com
    <Directory />
        Options FollowSymLinks
        AllowOverride None
    </Directory>
    <Directory /var/www/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>

    LogLevel warn
</VirtualHost>

      

I hope this helps someone else having this problem!

- MichaelCurry

+13


source


you have to use this like

ServerAlias www.domain.com domain.com
ServerAlias *.domain.com

      

if you want to use the way you have to follow.

ServerAlias www.*.com *.com 

      

problem has

VirtualDocumentRoot /var/www/%1/production/html

      

You are using a dynamic VirtualDocumentRoot which means

for redcrusher.com VirtualDocumentRoot

/var/www/redcrusher/production/html

      

and for www.redcrusher.com VirtualDocumentRoot

/var/www/www.redcrusher/production/html

      



I think with split ServerAlias ​​in Three parts it solves

ServerAlias www.*.com
VirtualDocumentRoot /var/www/%1/production/html/
ServerAlias *.*.com
VirtualDocumentRoot /var/www/%2/production/html/%1 
ServerAlias *.com 
VirtualDocumentRoot /var/www/%1/production/html

      

I think should work

VirtualDocumentRoot:

redcrusher.com

/var/www/redcrusher/production/html

      

www.redcrusher.com

/var/www/redcrusher/production/html/

      

sub.redcrusher.com

/var/www/redcrusher/production/html/sub

      

+4


source







All Articles