Nginx将所有www重定向到@

时间:2019-05-21 14:01:32

标签: nginx server

我有一个多域Magento 2网站。我从不使用www,并且为每个域都使用dns将cname设置为@,但是我需要一种将所有www请求重定向到@而不管域的方法。有没有办法以这种方式设置Nginx服务器块?

1 个答案:

答案 0 :(得分:0)

我想这就是您想要的:

if ( $host ~* ^www\.(.+) ) {
    set $domain_only $1;
    return 301 $scheme://$domain_only$request_uri;
}

您可以使用此规则创建文件并将其包含在配置中。

UPD:

我建议您使用这样的内容:

server {
    listen XX.XX.XX.XX:80;
    server_name example.com www.example.com;
    return 301 https://example.com$request_uri;
}

server {
    listen XX.XX.XX.XX:443 ssl http2;
    server_name example.com www.example.com;

    if ( $host ~* ^www\.(.+) ) {
    set $domain_only $1;
    return 301 $scheme://$domain_only$request_uri;
    }
...