wildcard to rewritre multi domains to www
Igor Sysoev
is at rambler-co.ru
Sun Sep 6 08:29:09 MSD 2009
On Sat, Sep 05, 2009 at 11:28:14AM -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. :)
You should use positive logic: configure all sites and redirect
remainder using regex:
server {
server_name www.domain1.com;
...
}
server {
server_name www.domain2.com;
...
}
server {
server_name www.domain3.com;
...
}
server {
server_name www.*;
...
}
server {
server_name ~^([^.]\.com)$;
set $name $1;
rewrite ^ http://www.$name$request_uri? permanent;
}
nginx tests server names for the first match in following order:
1) exact names,
2) *.name wildcards,
3) name.* wildcards,
4) regex names in order of their appearance.
> 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;
> }
>
>
> --
> Igor Sysoev
> http://sysoev.ru/en/
>
--
Igor Sysoev
http://sysoev.ru/en/
More information about the nginx
mailing list