0

在我的 htaccess 文件中,我有以下两条规则。我想让第二个发生在第一个不匹配的情况下。目前,他们都跑了。有什么办法可以避免碰撞吗?

redirect 301 /lorem/ipsum-keyword.html /lorem/dolorem-keyword.html
RewriteRule (.*)-keyword.html$  /dir/file.php?param=$1

提前致谢。

4

2 回答 2

1

对两者都使用 mod_rewrite 并使用 L 选项来确保不会发生进一步的重写。像这样的东西:

RewriteRule ^lorem/ipsum-keyword.html$ http://yourdomain.com/lorem/dolorem-keyword.html [R=301,L]
RewriteRule (.*)-keyword.html$  /dir/file.php?param=$1
于 2010-08-26T20:52:25.443 回答
0

您可以对 301 使用重写规则并添加 L 标志,因此它将忽略以下规则。

我无法测试它,但这应该有效:

RewriteRule /lorem/ipsum-keyword.html$  /lorem/dolorem-keyword.html [R=301,L]
RewriteRule (.*)-keyword.html$  /dir/file.php?param=$1
于 2010-08-26T20:51:27.210 回答