wildcard to rewritre multi domains to www
Marcus Clyne
maccaday at gmail.com
Sun Sep 6 00:53:02 MSD 2009
Hi,
Cliff Wells wrote:
> Try this:
>
> server {
> server_name ~(^.+\..+$);
> set $name $1;
> rewrite ^ http://www.$name$request_uri? permanent;
> }
>
>
That will cause problems if the domain begins with www. If you want to
capture both www.domain.tld and domain.tld and rewrite to include the
www., you could use
server {
server_name ~^(www\.)?(.+)$;
set $name $2;
rewrite ^ http://www.$name$request_uri? permanent;
}
Marcus.
> Regards,
> Cliff
>
> On Sat, 2009-09-05 at 11:28 -0500, AMP Admin wrote:
>
>> Thanks. I'll do that. I was just hoping that I wouldn't have to list all
>> domains. That works though. :)
>>
>> Regards,
>>
>> -Team AMP
>> http://www.ampprod.com
>>
>> -----Original Message-----
>> From: owner-nginx at sysoev.ru [mailto:owner-nginx at sysoev.ru] On Behalf Of Igor
>> Sysoev
>> Sent: Saturday, September 05, 2009 9:21 AM
>> To: nginx at sysoev.ru
>> Subject: Re: wildcard to rewritre multi domains to www
>>
>> On Sat, Sep 05, 2009 at 08:57:57AM -0500, AMP Admin wrote:
>>
>>
>>> Hi, I would like to rewrite several domains to from .example.com to
>>> www.example.com. I think the best way is to use a wild card. Too bad I
>>> suck at rewrite rules. Haha
>>>
>>> Can someone help me make the following work?
>>>
>>> if ($host != 'www.*.com') {
>>> rewrite ^/(.*)$ http://www.*.com/$1 permanent;
>>> }
>>>
>> server {
>> server_name ~^((?:domain1|domain2|domain3)\.com)$;
>> set $name $1;
>> rewrite ^ http://www.$name$request_uri? permanent;
>> }
>>
>>
>>
More information about the nginx
mailing list