强制WWW与清漆和nginx

我试图找出如何强制WWW在清漆只有一个领域。 我看到这个答案,以消除WWW,但我不知道如何翻译它来强制它。

编辑:澄清,我的nginxconfiguration工作正常。 直到我添加清漆之后,才发生这种情况。 我find了罪魁祸首,回答了我自己的问题。

不要使用“如果”没有特殊的需要。 如果是邪恶的! 正确的方法是…

server { server_name somedomain.com; return 301 http://www.somedomain.com$request_uri; } server { server_name www.somedomain.com; # typical lines # ... } 

以下片段是针对Nginxconfiguration的:

 if ($host !~* ^www\.) { rewrite ^(.*)$ http://www.$host$1 permanent; } 

我需要从varnish中的vcl文件中删除这个。

 if (req.http.host ~ "^(www\.)?domain\.com$") { set req.http.host = "www.domain.com" return (lookup); 

}