允许PHP用RewriteRule读取GET



RewriteRule ^cards/([^/]*)/([^/]*)$ /cards/?name=$1&page=$2 [L]

嗨。这个在。htaccess中。如果我在url的末尾加上?extra=1,然后加上var_dump,它不会读取$_GET['extra'];有旗子管用吗?

我在这里看到了一些额外的标志,但在这种特殊情况下似乎没有任何用处。

我在这里看到了一些额外的标志,但在这种特殊情况下似乎没有任何用处。

如果您期望原始请求上的查询字符串RewriteRule替换中的查询字符串合并(RewriteRule指令的第二个参数),那么您需要将QSA标志(查询字符串追加)添加到您的规则中。默认行为是替换中的任何查询字符串都将覆盖请求。

但是,您应该重写为处理请求的实际文件,而不是目录

(并且假定mod_dir为目录索引发出内部子请求)。 例如:

RewriteRule ^cards/([^/]+)/([^/]*)$ /cards/index.php?name=$1&page=$2 [QSA,L]

旁白:我还将第一个量词从*更改为+,因为路径段不能为空以使规则成功。

相关内容

  • 没有找到相关文章

最新更新