[英]Combining multiple htaccess rewrite rules into one
首先,让我这样说:我很喜欢regex和htaccess。 我正在尝试制定一条规则,将URL段正确解析为变量。 到目前为止,我有这个:
RewriteRule ^([^/]+)/?$ index.php?query[]=$1 [QSA,L]
RewriteRule ^([^/]+)/([^/]+)/?$ index.php?query[]=$1&query[]=$2 [QSA,L]
RewriteRule ^([^/]+)/([^/]+)/([^/]+)/?$ index.php?query[]=$1&query[]=$2&query[]=$3 [QSA,L]
RewriteRule ^([^/]+)/([^/]+)/([^/]+)/([^/]+)/?$ index.php?query[]=$1&query[]=$2&query[]=$3&query[]=$4 [QSA,L]
它可以工作,但是我觉得它比需要的更长。 如果我想要5或6或7个变量怎么办? 有没有更简洁的方式写出来?
另外,当我吐出查询数组时,第一个元素始终是index.php。 那是怎么回事?
不要使用RewriteRule
将pathinfo转换为查询参数,而只需在Apache HTTP Server中启用MultiViews并在explode()
很少帮助下在index.php
使用$_SERVER['PATH_INFO']
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.