【发布时间】:2014-04-18 22:46:02
【问题描述】:
这是我的.htaccess 文件:
ErrorDocument 404 /index.php?cmd=notfound
# Maintenance
RewriteCond %{REMOTE_ADDR} !^(Redacted)
RewriteRule ^ maintenance.php [L]
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(\w+)(?:/(\w+))?(?:/(\w+))?(?:/(\w+))?(?:/(\w+))?(?:/(\w+))?/?$ route.php?1=$1&2=$2&3=$3&4=$4&5=$5&6=$6 [L]
它可以工作,没有错误,但是有一个问题:最后一个 RewriteRule 不允许参数中有空格。
有人告诉我将\w+ 替换为[\w ]+,但是当我这样做时出现错误:
RewriteRule: bad flag delimiters
【问题讨论】:
-
尝试转义空间
[\w\ ]+或直接使用[\w\s]+