首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Permalinks不包括www子域。

Permalinks不包括www子域。
EN

WordPress Development用户
提问于 2022-03-08 11:08:34
回答 1查看 20关注 0票数 0

我最近迁移了一个网站,这个网站有和没有www子域。我将.htaccess配置为始终重定向到www:

代码语言:javascript
复制
RewriteCond %{HTTP_HOST} ^[^.]+\.[^.]+$
RewriteCond %{HTTPS}s ^on(s)|
RewriteRule ^ http%1://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

此外,站点地址现在被配置为使用www:

而permalinks似乎也使用www子域:

但是,如果我将页面的段塞配置为如下所示,并尝试使用post名称访问页面,服务器将发送一个301重定向(带有位置https://example.com/example-slugGET www.example.com/example-post -> 301,由于.htaccess配置将再次重定向到https://www.example.com/example-slug )。而且,数据库中的所有guids都不包含www。

有没有办法防止这些不必要的重定向?我的SEO分析工具是抱怨重定向链。

EN

回答 1

WordPress Development用户

发布于 2022-03-09 16:46:49

.htaccess中的设置告诉服务器如何处理请求。由于该站点以前既允许www也允许非www URL,所以您需要保持.htaccess的位置,所以旧的链接可以正确地重定向。但是,这并不能告诉WP它现在生活在www子域中;它在许多地方存储URL。

您可以忽略GUIDs -它们只是唯一的in -但是您可以运行一个搜索并替换脚本或插件来更新数据库中的所有其他URL。

如果启用了WP CLI,则命令为

代码语言:javascript
复制
wp search-replace 'https://example.com' 'https://www.example.com'

如果没有,也有数据库迁移插件可以更新所有的URL并在数据库中正确地序列化它们。

票数 1
EN
页面原文内容由WordPress Development提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://wordpress.stackexchange.com/questions/403504

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档