Nginx的404重写问题

我试图抓住斜杠之间的variables,并将它们传递给我的pipe理脚本,在Nginx中有以下重写行:

rewrite ^/(.*)/(.*)/(.*)/(.*)/(.*)/(.*)$ /index.php?p1=$1&p2=$2&p3=$3&p4=$4&p5=$5&p6=$6; 

如果我请求页面less于6个variables(例如:/ var1 / var2 / var3 / var4 / var5 /)404s。

是否有可能使用less于6个variables? (我将需要在我的Web应用程序的不同部分完整的6个variables)

使用Nginx 1.4.1-1.el6 64bit + PHP-FPM在OpenVZ中运行CentOS 6。

提前致谢。

如果斜线之间没有正确的六个项目,那么这个模式不匹配,你会得到一个404。

你可以分别创build五个新的重写规则,分别包含一个到五个variables(或者,比正则expression式更好的人可能会build议一个规则来涵盖所有六个情况,但这是大多数人的头),或者只是在你的应用程序中处理代替。