如何在htaccess中为不包含特定字符串的所有网址添加重定向?

时间:2014-03-09 07:48:04

标签: wordpress .htaccess mod-rewrite redirect wordpress-plugin

我的wordpress博客有一些htaccess问题。我之前的网址类似于

  

物品name.html

现在我将结构改为

  

博客/物品name.html

但是我仍在获得404我在其他各种网站上分享的旧网址。我尝试添加htaccess规则,也试过“重定向”插件但没有成功:

enter image description here

在.htaccess中我尝试过:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^((?!blog/).)*.html$ - /blog/$1.html [L]
</IfModule>

2 个答案:

答案 0 :(得分:1)

你的正则表达式似乎有问题,试试这个:

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^((?!blog/).+?\.html)$ /blog/$1 [L,R=301,NC]

答案 1 :(得分:0)

更改 RewiteBase

但您的 .htaccess 不是原始的WordPress .htaccess。为什么你不使用它?