RewriteRule没有将参数传递给页面

时间:2015-06-03 11:26:57

标签: php .htaccess mod-rewrite

我在.htaccess文件中有这样的条目。

RewriteBase /
DirectoryIndex home.php
Options +FollowSymLinks
RewriteEngine on
# Allow any files or directories that exist to be displayed directly
RewriteRule ^(.*)/gas-agencies-near-(.*) locate-gas-agencies-near-by.php?district=$1&locality=$2

但是当我提出这样的请求时

巴加尔科特/气机构-近比尔基

URL匹配,但它将区域和位置参数传递为“”。请帮助我在哪里做错了?

1 个答案:

答案 0 :(得分:0)

您的重写中存在一些问题。在规则中使用(.*)表示它将匹配所有内容。

RewriteBase /
DirectoryIndex home.php
Options +FollowSymLinks
RewriteEngine on
# Allow any files or directories that exist to be displayed directly
RewriteRule ^([A-Za-z0-9-_]+)/gas-agencies-near-([A-Za-z0-9-_]+)$ locate-gas-agencies-near-by.php?district=$1&locality=$2

请检查我在规则中添加的正则表达式,因此它仅匹配有限的部分。