1

我的 .htaccess 中有这个正则表达式,但它不起作用。我想要实现的是这个链接:http://www.domain.com/接收4个可选参数,所以它看起来像这样。http://www.domain.com/var1/var2/var3/var4

但由于某种原因,此代码不起作用,我不断收到 404 错误。

RewriteRule ^([^/]+)/([^\.]+)/([^/]+)/([^\.]+)/$ index.php?var1=$1&var2=$2&var3=$3&var4=$4

任何帮助表示赞赏。

谢谢海伦。

更新:

如果我上面的内容不正确,有人可以告诉我如何为我的 url 提供 4 个参数,http://www.domain.com/index.php?var1=$1&var2=$2&var3=$3&var4=$4如下所示:http://www.domain.com/var1/var2/var3/var4

谢谢

4

1 回答 1

1

好吧,我们可以说三件事:

  1. 在您在介绍中给出的示例中,没有添加查询参数,而是路径中的标记。然而在RewriteRule你添加查询参数。那不匹配。

  2. 您得到的 404 返回代码表明文件 index.php 不存在(至少不是服务器查找它的位置。

  3. 你在里面使用的正则表达式RewriteRule肯定不会匹配任何东西。

您应该首先记录在重写过程中实际发生的事情。否则你不会理解它。检查这两个选项RewriteLog以及RewriteLogLevelmod_rewrite 提供的以及它们出色的文档。

于 2012-10-23T10:25:33.230 回答