📜  将 www 重定向到非 www nginx (1)

📅  最后修改于: 2023-12-03 15:25:15.277000             🧑  作者: Mango

将www重定向到非www的Nginx

当您的网站既可以通过www访问,也可以通过不带www的域名访问时,会存在一些SEO问题,例如搜索引擎会将这两种网站视为两个网站,从而降低了网站的排名。为了解决这个问题,您可以使用Nginx在网站访问时,将www重定向到非www的域名。

以下是将www重定向到非www的Nginx配置块:

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

该配置块将请求www.example.com的转至example.com,并将HTTP响应代码设置为301,表示永久转移。

使用以下步骤进行配置:

  1. 打开Nginx服务器上的配置文件。对于Ubuntu系统,请打开 /etc/nginx/sites-available/default 文件。
  2. 找到您想进行重定向的服务器块,例如: server_name www.example.com
  3. 在服务器块中添加以上的Nginx代码片段。
  4. 保存并关闭配置文件。
  5. 重启Nginx服务器以使更改生效。在Ubuntu上使用 sudo service nginx restart 命令执行此操作。

测试您的网站是否成功进行重定向。现在,当访问 www.example.com 时,将会被重定向到 example.com。

备注:

  • 如果您的网站已启用HTTPS,请在配置中添加HTTPS的监听端口,如下所示:

    server {
        listen 80;
        listen 443 ssl;
        server_name www.example.com;
        return 301 $scheme://example.com$request_uri;
    }
    
  • 如果您的网站使用反向代理,请在反向代理配置中添加以上的Nginx代码片段。

以上就是将www重定向到非www的Nginx配置方法。 使用这种方法,您可以防止SEO问题并保持网站的一致性。