0

我检测到我的网站可以使用域名访问,最后有一个点。例如“sim-portal.ru.”。它运行良好,我发现根据 W3C,这是一种很好的域名形式。但我需要将此域自动重定向到普通域(无点),例如“sim-portal.ru”,因为 cookie 在“指向”域中不起作用并且链接看起来错误。我已经使用下一条规则将 www.-prefixed 域(如 www.sim-portal.ru)重定向到基本域:

server {
    listen  80;
    server_name  www.sim-portal.ru;
    rewrite ^ http://sim-portal.ru$request_uri? permanent; #301 redirect
}

但同样的规则不适用于后指向域:

server {
    listen  80;
    server_name  sim-portal.ru.;
    rewrite ^ http://sim-portal.ru$request_uri? permanent; #301 redirect
}

我做错了什么?

4

1 回答 1

0

我自己找到了一个很好的解决方案。将此规则添加到两个服务器 {} 块(对于 www.sim-portal.ru 和 sim-portal.ru)将解决该问题:

if ($http_host != 'sim-portal.ru') {
    return 301 http://sim-portal.ru$request_uri;
}

但是别忘了重启nginx!

于 2013-07-31T13:07:24.460 回答