我有一个wordpress博客,并且有URL的问题。几个月前,我像这样使用带有slug的链接(当我切换到MultiSite时强制更改为博客),example.com/blog
现在我正在使用没有博客的wordpress,并在链接后删除了slug"BLOG"。
问题是我与旧博客 slug 有许多高质量的反向链接。
当有人带着 example.com/blog/post-permalink 访问我的博客时,它会重定向到错误not_found_404因为链接应该看起来像这样,example.com/post-permalink。
我很困惑,如何重定向 example.com/blog/post-name 附带的每个请求并重定向到 example.com/post-name
重定向下面的页面/blog/
它应该像域根目录(索引所在的位置.php)中的.htaccess一样简单,其中包含以下内容:
RewriteEngine on
RewriteRule ^blog/(.*)$ /$1 [L,R=301]
请注意,每个 .htaccess 文件只需要一次RewriteEngine on
,因此如果它已经存在,请跳过此操作。
RewriteRule
本身将所有以 ( ^
) 开头的 URL 与 blog/
匹配,并捕获后面的所有内容,直到结尾 ($
)。捕获的零件存储在参考$1
中。
此后,此引用将用于重定向目标,如/$1
。
L
意味着不会评估 .htaccess 中的其他规则。
R=301
使用 HTTP/1.1 301 永久重定向进行重定向,这对于 SEO 来说是可取的,并将所有访问者重定向到新 URL。
重定向/博客本身
除上述插入外
RewriteRule ^blog(/?)$ / [L,R=301]