htaccess - 将.shtml和.html重写为。 PHP

时间:2012-12-13 20:03:39

标签: php html .htaccess mod-rewrite shtml

我对mod_rewrite非常环保。我的第一线就像一个冠军,但第二部分拒绝合作

RewriteRule ^(.*).html$ $1.php
RewriteRule ^(.*).shtml$ $1.php [R=301,L]

.shtml部分失败并且404s - 没有我的自定义404页面。这应该合并为一个规则吗?我应该辞掉工作,让他们雇一只猴子来代替我吗?有人有解决方案吗?

谢谢!

1 个答案:

答案 0 :(得分:2)

假设您打算将.shtml.html重定向到.php ...

这些应该合并为一个规则,问题似乎是两者都匹配,因为.之前未转义的.html代表“任何字符”,因此也匹配{{1} }。

模式shtml将与文字\.s?html匹配,后跟可选 .,以s结尾。

html