【发布时间】:2014-07-27 20:06:24
【问题描述】:
我在我的网站上使用了以下 RewriteRule:
RewriteEngine On
RewriteRule ^([^/]*)$ /code.php?name=$1 [L]
RewriteRule ^([^/]*)/([^/]*)$ /code.php?name=$1&state=$2 [L]
RewriteRule ^([^/]*)/([^/]*)/([^/]*)$ /code.php?name=$1&state=$2&district=$3 [L]
RewriteRule ^([^/]*)/([^/]*)/([^/]*)/([^/]*)$ /code.php?name=$1&state=$2&district=$3&city=$4 [L]
RewriteRule ^([^/]*)/([^/]*)/([^/]*)/([^/]*)/([^/]*)$ /code.php?name=$1&state=$2&district=$3&city=$4&branch=$5 [L]
所有最后 4 条规则都工作正常,但第一个规则在访问时抛出 500 错误。我试验了一个小时。最终得到了一个有点奇怪的解决方案。我编辑了第一条规则:
RewriteRule ^([^/]*)/$ /code.php?name=$1 [L]
当我在查询参数后添加正斜杠时它可以工作,但是当没有正斜杠时会抛出 404 错误。
任何帮助都会很棒!干杯。
【问题讨论】:
-
500 错误或错误 500?请添加生成错误的示例 URI。
标签: regex apache .htaccess mod-rewrite