From: Tom Evans <tevans.uk@xxxxxxxxxxxxxx>
To: users@xxxxxxxxxxxxxxxx
Sent: Wednesday, August 17, 2011 11:03 AM
Subject: Re: [users@httpd] ServerAlias and RewriteRule
On Wed, Aug 17, 2011 at 4:56 PM, Richard Taubo <
ort@xxxxxxxxxxxx> wrote:
> Thanks!
>
> So to be 110% clear, since this is kind of important to get right
:-)
>
> 1) So either this – leave off the / from the end of the rewritten URL:
> RewriteRule ^(.*)$
http://www.example.com$1 [L,R=301]
>
> 2) Or this – not capture the slash from the original URL:
> RewriteRule ^/(.*)$
http://www.example.com/$1 [L,R=301]
>
> 3) But not this – as was the alternative I started out with (the browsers I have tested
> do not seem mind, but the rewrite logs shows that an extra slash is added):
> RewriteRule ^(.*)$
http://www.example.com/$1 [L,R=301]
>
>>>
>>> Question 2)
>>> Is the method I use to alias "example.com" with "www.example.com",
>>> a good way to set up a
ServerAlias in my httpd.conf file, or are there better ways?
>>> My current method, as mentioned above, is:
>>> ServerName www.example.com
>>> ServerAlias example.com
>>> RewriteEngine On
>>> RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
>>> RewriteRule ^(.*)$
http://www.example.com$1 [L,R=301]
>>>
>>
>> It's fine. Some people prefer to have the host name canonicalization
>> occur in a separate vhost, as this separates the configuration for the
>> 'correct' hostname from the configuration for 'incorrect' hostnames.
>
> So instead of:
> <VirtualHost *:80>
> ....
> ServerName www.example.com
> ServerAlias example.com
> RewriteEngine On
>
RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
> RewriteRule ^(.*)$
http://www.example.com$1 [L,R=301]
> </VirtualHost>
>
> They would rather create two VirtualHosts like this instead:
> <VirtualHost *:80>
> ....
> ServerName www.example.com
> ....
> </VirtualHost>
>
> <VirtualHost *:80>
> ....
> ServerName example.com
> RewriteEngine On
> RewriteRule ^(.*)$
http://www.example.com$1 [L,R=301]
> ....
> </VirtualHost>
>
>
> Appreciate your answers!
>
> Richard Taubo
Yep, precisely. Personally I do option 2 for the first question, and
multiple vhosts for the second question (but a single vhost is also
perfectly
fine).
Cheers
Tom
---------------------------------------------------------------------
The official User-To-User support forum of the Apache HTTP Server Project.
See <URL:
http://httpd.apache.org/userslist.html> for more info.
To unsubscribe, e-mail:
users-unsubscribe@xxxxxxxxxxxxxxxx " from the digest:
users-digest-unsubscribe@xxxxxxxxxxxxxxxxFor additional commands, e-mail:
users-help@xxxxxxxxxxxxxxxx