perl催化剂www到非www重定向

时间:2013-05-24 16:35:51

标签: perl redirect nginx catalyst no-www

我有一个托管多个客户网站的托管平台。这是Catalyst app负载均衡nginx。我希望每个客户都能够选择是否要让他们的域名前面有www或者前面没有www,然后我希望能够重定向适当。我的问题是,最好在nginx级别或Catalyst级别处理此类问题吗?通常,简单的wwwnon-www重定向将在负载均衡器级别处理,但我认为,由于我重定向的方式因域而异,因此处理重定向可能更有意义。 Catalyst级别?如果是这样,在www中处理从non-wwwCatalyst(或反之亦然)的重定向的最佳方法是什么?或者如果您认为nginx会更好,那么使用它来处理这个问题的最佳方法是什么?谢谢!

2 个答案:

答案 0 :(得分:1)

您可以使用客户的DNS执行此操作例如,如果您将www.domain.com设为domain.com的CNAME别名,并使用nginx将www.domain.com重写为domain.com。我认为这将是最简单的方法。它是否以某种方式混淆了Catalyst?

另请注意,以这种方式使用CNAME别名意味着您必须小心使用可能用于HTTPS的SSL证书。

答案 1 :(得分:0)

像nginx这样的Web服务器非常适合进行简单的URL重定向。使用nginx,您可以执行以下重定向:

server {
        listen       0.0.0.0:80;
        server_name  *.mydomain.com;

        rewrite ^(.*) http://mydomain$1 permanent;
}