[英]WordPress 301 redirect loop issue
我保留了现有的WordPress网站,但更改了域名。 旧域名将被重定向到同一网站,因此,如果有人访问https://oldexample.com,他们将到达https://newexample.com 。
从我所读的内容中,将需要执行301重定向,将旧段塞重定向到新URL,如下所示:
redirect 301 /old-page/ https://newexample.com/new-page
但是,在我在线阅读的每篇文章中,这种方法都假定旧的弹头与弹头的名称有所不同。
但就我而言,所有页面都具有相同的特性,但是将具有不同的域。 例如:来自旧域的一条消息可能是my-cool-page,而在新域中,还有一个名为my-cool-page的页面,根据我阅读的内容,我需要这样做:
redirect 301 /my-cool-page/ https://newexample.com/my-cool-page
但是,这是我的问题:这会不会导致重定向循环? 或者我可以简单地摆脱这个:
redirect 301 https://oldexample.com/my-cool-page/ https://newexample.com/my-cool-page
.htaccess中唯一需要的规则是:
RewriteCond %{HTTP_HOST} ^(?:www\.)oldexample\.com$ [NC]
RewriteRule ^ https://newexample.com%{REQUEST_URI} [L,R=301]
这将覆盖您的所有 URL。 您使用的方法不仅会导致重定向循环,而且每个URL都需要一个新规则。 不是很有效。
由于它是Wordpress,并且Wordpress将URL保存在数据库中,因此您需要搜索和替换数据库中的旧域,然后用新域替换它。
有很多工具和/或插件可以做到这一点。 最好的IMO是wp-cli 。 使用它,您只需要执行
wp search-replace https://oldexample.com https://newexample.com
从命令行开始,您就可以开始滚动了。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.