如何在WordPress中将www URL重定向到非www

时间:2020-03-05 15:31:11  来源:igfitidea点击:

此快速教程演示了如何在WordPress中将www URL重定向到非www URL。
已经讨论了http和https版本。

在WordPress中将www重定向到非www

要将所有来自www.your_URL.com的请求重定向到your_URL.com,我们可以修改.htaccess文件以在IfModule mod_rewrite.c的开头添加以下几行

RewriteEngine On
RewriteCond %{HTTP_HOST} =www.your_URL.com
RewriteRule (.*) https://your_URL.com/ [R=301,L]

在万维网项目的开始,URL结构中使用WWW来表示URL包含一组链接的超文本文档,这些文档可以在Web浏览器上查看。
简单来说就是一个网站。

同样,文件是托管在FTP服务器上的,其地址在URL结构中将使用ftp。

因此,www.example.com表示网站,ftp.example.com表示ftp。

时间改变了,但将www放入URL的“传统”仍在继续。
如今,我们不再需要在网址中添加www。
这是不必要的,并且会使的网址很长。

问题是,尽管我们知道www是毫无意义的,但访问者却可能不知道。
某些人仍然在输入URL之前手动输入www。
如果使用Ctrl + Enter之类的浏览器快捷方式,它将在输入的URL之前和之后自动添加www和com。

我们有两种选择:

  • 使在www和非www URL上均可用。但是问题在于带有www的URL将被视为一个子域,并且从SEO的角度来看会造成问题。
  • 第二个选项是将www重定向到非www URL的301重定向。这样,即使有人键入www.URL.com,他/她也将自动重定向到URL.com。

让我们来看看如何做到这一点。

在WordPress中将www URL重定向到非www

要将www重定向到非www域,我们必须在服务器上编辑.htaccess文件。

我们可以在WordPress安装的公共文件夹中找到此文件。
我们可以使用FileZilla之类的FTP工具来访问服务器上的文件。

如果可能,请尝试将命令行用于WordPress或者任何类型的服务器管理任务。

它将提高技能。

由我们决定如何编辑文件。

在.htaccess文件中,转到IfModule mod_rewrite.c部分。
如果不存在,请自行创建。

这是我们应在本节开头添加的代码:

RewriteCond %{HTTP_HOST} =www.your_URL.com RewriteRule (.*) https://your_URL.com/ [R=301,L]

不要与HTTP_HOST混淆使用https。
HTTP_HOST适用于http和https。
没有HTTPS_HOST。

如果不使用SSL,则可以在的网址中使用http而不是https。

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} =www.your_URL.com
RewriteRule (.*) https://your_URL.com/ [R=301,L]
</IfModule>

我们可能在mod_rewrite.c部分中有一些重写条件。
在这种情况下,我们必须在其他任何规则之前将此www设置为非www重定向。

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} =www.your_URL.com
RewriteRule (.*) https://your_URL.com/ [R=301,L]
RewriteBase /
RewriteRule ^index\.php$- [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

注意

重定向代码应该在重写部分中的任何其他代码之前。
否则,重定向将无法正常进行。

如果要通过https将www重定向到非www,则应确保SSL证书同时包含URL的www版本和非www版本。

如果我们自己生成了SSL证书,则应考虑www子域来重新生成它。