2014-05-03 37 views
1

我有在明确定义的4位数字,然后2个数字,然后2位数字的形式/year/month/date环节上的Apache重写规则,看起来像这样:对nginx正则表达式的限制?

^([0-9]{4})/([0-9]{2})/([0-9]{2})/$ 

在nginx的这个表达式会导致一个错误,指出整条生产线不是由;标志终止,直到我删除{}括号,离开这样的正则表达式:

^/([0-9]+)/([0-9]+)/([0-9]+)/$ 

这是限制对nginx的的一部分,或者对我而言有些错误故意的吗?

整条生产线从Apache的:

RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/$ index.php?page=date&year=$1&month=$2&day=$3 

整个(工作)从nginx的线:

rewrite ^/([0-9]+)/([0-9]+)/([0-9]+)/$ /index.php?page=date&year=$1&month=$2&day=$3; 

回答

0

如果正则表达式包括“}”或“;”字符,整个表达式应该用单引号或双引号括起来。