将.html转换为文件名中的-html

时间:2015-02-18 18:20:22

标签: wordpress .htaccess mod-rewrite filenames

我将我的网站转换为WordPress。在此过程中,为了满足WordPress关于永久链接格式的规则,我不得不将文件名从.html结尾更改为以-html结尾。

不幸的是,其他网站的反向链接指向以.html结尾的旧网页。因此,当有人点击其中一个反向链接时,无法在新网站上找到该页面。

出于这个原因,我希望使用.htaccess永久重定向所有以.html结尾的URI请求,以便它们以-html结束。

例如:

https://example.com/file1.html

需要永久重定向到

https://example.com/file1-html

可悲的是,我的代码产生了500个错误。

以下是我根据Apache手册中的内容编写的内容:

<Directory /home/accountname/public_html>
    RewriteEngine on
    RewriteBase /home/accountname/public_html

    RewriteCond $1.html !-f
    RewriteRule ^(.*).html$ $1-html [R=301,L]
</Directory>

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:3)

.htaccess中不允许使用

<Directory>指令。

将此规则放在主WP .htaccess中:

RewriteEngine on

RewriteRule ^(.+?)\.html$ /$1-html [R=301,L,NE,NC]

确保这是RewriteEngine on行以下的第一条规则。