Php Zend Framework使用NGINX额外获取参数

Php Zend Framework使用NGINX额外获取参数,php,zend-framework,nginx,get,Php,Zend Framework,Nginx,Get,我通过以下方式(使用fpm的PHP5.3)为Zend配置了NGINX: 现在我想处理其他get参数,如: 在我的本地开发系统(Apache)中,它可以正常工作,但在没有提供get参数的NGINX下就不行了 奇怪的建议 编辑: 现在我使用了下面的配置,它似乎可以工作,但我不满意,因为每个人都建议“尽可能使用try_文件” 我用a来做这个;尝试将位置/块替换为以下内容: location / { index index.php index.html index.htm; } if

我通过以下方式(使用fpm的PHP5.3)为Zend配置了NGINX:

现在我想处理其他get参数,如:

在我的本地开发系统(Apache)中,它可以正常工作,但在没有提供get参数的NGINX下就不行了

奇怪的建议

编辑:

现在我使用了下面的配置,它似乎可以工作,但我不满意,因为每个人都建议“尽可能使用try_文件”

我用a来做这个;尝试将
位置/
块替换为以下内容:

location / { 
    index  index.php index.html index.htm;
}   

if (!-e $request_filename) {
    rewrite ^.*$ /index.php last;
}
我用a来做这个;尝试将
位置/
块替换为以下内容:

location / { 
    index  index.php index.html index.htm;
}   

if (!-e $request_filename) {
    rewrite ^.*$ /index.php last;
}
从Nginx文档():

如果需要保留参数,则必须显式执行此操作:

从Nginx文档():

如果需要保留参数,则必须显式执行此操作:


您实际上是如何获取它的?使用print\r($\u get)测试它,但稍后使用$values=$this->getRequest()->getQuery();问题不在于脚本,问题在于脚本文件名是index.php,没有参数,因此php无法填充$\u GET数组等。试试这个
Try\u files$uri$uri//index.php?q=$uri&$args
而不是
if
。您实际如何获取它?使用print\r($\u get)测试它,但稍后使用$values=$this->getRequest()->getQuery()测试它;问题不在于脚本,问题在于脚本文件名是index.php,没有参数,因此php无法填充$\u GET数组等。试试这个
Try\u files$uri$uri//index.php?q=$uri&$args
而不是
如果
。是的,我已经试过了,正要编辑我的问题,但每个人都说“尽可能使用try\u文件”,所以我仍然对它的解决方案感兴趣。是的,这很有效我已经试过了,正要编辑我的问题,但每个人都说“尽可能使用try\u文件”所以我仍然对它的解决方案感兴趣。
location / { 
    index  index.php index.html index.htm;
}   

if (!-e $request_filename) {
    rewrite ^.*$ /index.php last;
}
location / {
   try_files $uri $uri/ /index.php?$args;
}