使用两个获取参数

时间:2016-02-04 23:51:42

标签: php .htaccess clean-urls

我正在开发一个使用干净URI的PHP脚本。

我的问题是,我有一个页面首先使用没有get参数,然后是一个,最后两个。

.htaccess文件中的行目前如下所示:

 RewriteRule ^birthing-records/([^/]+)/?$ birthing-records.php?url=$1 [L,QSA,NC]

但是如果我像这样添加第二个参数:

RewriteRule ^birthing-records/([^/]+)/([^/]+)/?$ birthing-records.php?url=$1&second=$2 [L,QSA,NC]

脚本会将我重定向到错误页面。

我该如何设置?

对于那种情况,我需要.htaccess中的两行吗?

我通常会通过简单地调用另一个页面来解决这个问题,但我想保留我正在使用的确切URI,因为所有这些页面都在Google上编入索引。我真的很感激任何帮助。

1 个答案:

答案 0 :(得分:2)

每个人都需要一个规则,否则每当你放一个参数时它就会中断。

RS

感谢@Martin的注释:第一个L选项已被删除,因为L选项表示要运行的最后一个规则(L选项只能存在一个规则)

否则,据我所知,他们每个人都可以单独工作,但如果你想接受1或2个参数,那么你需要两个规则。

您可以在此处测试htaccess内容:http://htaccess.mwl.be/