5

我刚刚更改了我的 wordpress 网站中的永久链接。

我的旧链接是这样的,

http://www.sitename.com/category/postname.html

现在新的链接是

http://www.sitename.com/category/postname/

我在旧链接处收到 404 错误,如何将所有 .html 页面重定向到带有 .htaccess 的新非 .html 页面?

4

3 回答 3

9

在文档根目录的 htaccess 文件中,在您的 wordpress 规则之前添加以下内容:

RedirectMatch 301  ^/([^/]+)/([^/.]+)\.html$ /$1/$2/
RedirectMatch 301  ^/([^/]+)/([^/]+)/([^/.]+)\.html$ /$1/$2/$3/

如果你需要通过主机来限制它,你可以使用 mod_rewrite:

RewriteCond %{HTTP_HOST} sitename.com [NC]
RewriteRule ^([^/]+)/([^/.]+)\.html$ /$1/$2/ [R=301,L]

RewriteCond %{HTTP_HOST} sitename.com [NC]
RewriteRule ^([^/]+)/([^/]+)/([^/.]+)\.html$ /$1/$2/$3/ [R=301,L]
于 2012-08-12T22:17:15.187 回答
1

在 htaccess 文件中,只需输入:

Redirect 301  /postname.html  http://www.sitename.com/category/postname/
于 2019-03-21T06:09:35.807 回答
0

接受的答案(上图)Jon Lin给我带来了一些问题。这是我的结果,效果很好,而且更紧凑。

它适用于路径中的目录和目录。

单线:

RedirectMatch 301  ^/(.*)\.html$ /$1

或者,如果您需要它受主机限制:

RewriteCond %{HTTP_HOST} myDomain.com [NC]
RewriteRule ^(.*)\.html$ /$1 [R=301,L]

例子: 在此处输入图像描述

于 2022-01-05T10:50:32.270 回答