apache 301 rewrite跳转重定向

网络整理 - 06-27

apache 301重定向,如果想排除某个目录,或者排除某一文件,可以用下面的这种写法:

RewriteCond %{REQUEST_URI} !^/linux/1.html RewriteRule ^linux/(.*)$ $1 [R=301,L]

以上rewrite规则实现了:将linux文件夹下所有文件都重定向到new文件夹,1.html文件除外。

规则讲解:

RewriteRule中的最后的$1代表(.*),即截取到了linux文件夹下的文件名,然后301跳转到绝对路径上去,后面跟上$1表示文件名。

RewriteCond行排除/linux/1.html文件。也可以写成文件夹,都一样的。

注意:由于规定好的格式和语法

RewriteCond行linux前必须加斜杠

RewriteRule行linux前不能加斜杠

否则,重定向规则将无效。