Nginx www到非www重定向

Nginx www到非www重定向,nginx,cloud66,Nginx,Cloud66,我需要将www添加到非www重定向到nginx config。以下是配置文件的一部分(似乎整个配置对于堆栈溢出来说太长): 它不起作用。我甚至尝试在末尾添加以下块: server { server_name www.mydomain.com; return 301 $scheme://mydomain.com$request_uri; } 并尝试替换server\u name使用服务器名mydomain.com. 谢谢 Cloud 66在使用CustomConfig时自动重新加

我需要将www添加到非www重定向到nginx config。以下是配置文件的一部分(似乎整个配置对于堆栈溢出来说太长):

它不起作用。我甚至尝试在末尾添加以下块:

server {
    server_name www.mydomain.com;
    return 301 $scheme://mydomain.com$request_uri;
}
并尝试替换
server\u name使用
服务器名mydomain.com.


谢谢

Cloud 66在使用CustomConfig时自动重新加载配置。你可以试试这个:

if ($http_host = www.mydomain.com) {
   rewrite  (.*)  http://mycomain.com$1 permanent;
}

这可以在您的
服务器
部分下我最终使用了dnsimple url转发服务:。无需编辑nginx配置即可正常工作。

在配置文件末尾添加一个新的服务器块

server {
    listen 80;
    server_name www.your-domain.com;
    return 301 $scheme://your-domain.com$request_uri;
}

是否重新加载了nginx设置?因为你做对了是的,它已经重新加载了。嗯,很奇怪。你正在访问www.mydomain.com
?另外,ps:您不需要
server\u name如果您想匹配所有,您可以访问www.mydomain.com完整地删除它。CNAME设置正确。正如我提到的,我也尝试了server\u name mydomain.com而不是server\u name。获得nginx错误页面,提示检查错误日志,但错误日志为空…将此行添加到服务器块
error\u log/var/log/[error log name]
,然后重新加载并再次执行,您还可以添加
access\u log
,在这种情况下,最好的做法是使用两个服务器代码。请看这里:。。这就是为什么我要尝试上面的代码,卡什。这似乎有点过分,但如果它起作用的话。我发布了来自我们自己的nginx配置的代码(尽管我们的是另一种方式:非www到www)。
server {
    listen 80;
    server_name www.your-domain.com;
    return 301 $scheme://your-domain.com$request_uri;
}