如何将 www 重定向到 nginx 上的非 www 域

在Web开发领域,通常同时可以访问网站的www和非www版本。但是,拥有多个版本的网站可能会导致搜索引擎出现问题,因为它可能导致重复的内容。这可能会损害网站的搜索引擎排名并导致负面的用户体验。为避免此问题,建议将所有请求从网站的 www 版本重定向到非 www 版本。在本文中,我们将讨论如何在 Nginx 中将 www 重定向到非 www。Nginx-Logo-1

将 www 重定向到 nginx 上的非 www 域

第 1 步。首先,通过在终端中运行以下命令,确保所有系统软件包都是最新的。dnf

sudo dnf update
sudo dnf upgrade

第 2 步。安装Nginx。

Nginx在官方的Rocky Linux或基于RHEL的存储库中可用,可以使用包管理器轻松安装。要安装 Nginx,请运行以下命令:dnf

sudo dnf install nginx

安装完成后,启动 Nginx 服务,并通过运行以下命令使其在启动时自动启动:

sudo systemctl start nginx
sudo systemctl enable nginx

有关安装 Nginx 的其他资源,请阅读下面的帖子:

  • 如何在 Rocky Linux √ 上安装 Nginx
  • 如何在 Ubuntu Linux √ 上安装 Nginx

第 3 步。如何在 Nginx 上从 www 重定向到非 www。

从Nginx重定向到非Nginx的过程相对简单明了。在本节中,我们将完成设置重定向的步骤。wwwwww

该过程的第一步是打开 Nginx 配置文件。此文件通常位于目录中。如果您使用的是其他目录,请确保相应地修改文件路径。/etc/nginx

打开 Nginx 配置文件后,您需要创建一个新的服务器块。服务器块负责处理对您网站的传入请求并返回适当的响应。在这种情况下,服务器块将负责将请求从 non-重定向到非。wwwwww

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

在上面的代码中,指令用于指定服务器应侦听的端口。在这种情况下,它设置为 ,这是默认的 HTTP 端口。该指令用于指定此服务器块应处理的域名。在本例中,它设置为 。最后,a 指令用于指定重定向位置。在这种情况下,它设置为根域,后跟请求 URI。listen80server_namewww.your-domain.comreturnyour-domain.com

最后,保存并关闭配置文件,然后重新启动 Nginx 服务以使更改生效,使用以下命令:

nginx -t
sudo systemctl restart nginx

第 4 步。测试重定向。

要测试重定向,可以使用类似 的工具,它允许您从命令行发送 HTTP 请求:curl

curl -I http://your-domain/

或者通过访问网站的 www 版本来测试重定向。浏览器应自动重定向到网站的非 www 版本。

有关其他帮助或有用信息,我们建议您查看Nginx网站

未经允许不得转载:统信UOS之家 » 如何将 www 重定向到 nginx 上的非 www 域

相关文章