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

Linux命令 Edge插件网 2年前 (2023-03-11) 372次浏览 已收录 0个评论

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

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

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

<span class="pln">sudo dnf update
sudo dnf upgrade</span>

第 2 步。安装Nginx。

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

<span class="pln">sudo dnf install <a href="https://www.edge66.com/edgetag/nginx" title="查看更多关于nginx的文章" target="_blank">nginx</a></span>

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

<span class="pln">sudo systemctl start <a href="https://www.edge66.com/edgetag/nginx" title="查看更多关于nginx的文章" target="_blank">nginx</a>
sudo systemctl enable <a href="https://www.edge66.com/edgetag/nginx" title="查看更多关于nginx的文章" target="_blank">nginx</a></span>

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

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

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

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

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

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

<span class="pln">server </span><span class="pun">{</span><span class="pln">
    listen </span><span class="lit">80</span><span class="pun">;</span><span class="pln">
    server_name www</span><span class="pun">.</span><span class="pln">your</span><span class="pun">-</span><span class="pln">domain</span><span class="pun">.</span><span class="pln">com</span><span class="pun">;</span>
    <span class="kwd">return</span> <span class="lit">301</span><span class="pln"> $scheme</span><span class="pun">:</span><span class="com">//your-domain.com$request_uri;</span>
<span class="pun">}</span>

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

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

<span class="pln"><a href="https://www.edge66.com/edgetag/nginx" title="查看更多关于nginx的文章" target="_blank">nginx</a> </span><span class="pun">-</span><span class="pln">t
sudo systemctl restart <a href="https://www.edge66.com/edgetag/nginx" title="查看更多关于nginx的文章" target="_blank">nginx</a></span>

第 4 步。测试重定向。

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

<span class="pln">curl </span><span class="pun">-</span><span class="pln">I http</span><span class="pun">:</span><span class="com">//your-domain/</span>

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

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


Edge插件网 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:如何将 www 重定向到 nginx 上的非 www 域
喜欢 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址