安全地configurationphp的nginx

我想使用Nginx的Symfony2网站和其他软件,如phpMyAdmin。

我已经阅读了关于设置Symfony2的nginx文档,并且遇到了这个问题: http : //www.webhostingtalk.com/showthread.php? p=6807475#post6807475

我可以只使用security.limit_extensions=php ,然后使用这样的安全吗?

 location \.php$ { ... } 

这个博客似乎表明这是一个解决安全问题的file upload: http : //kaiwangchen.com/blog/2012/10/understand-the-cgi-fix_pathinfo-security-issue/

但是大多数带有用于设置nginx的教程的地方都推荐了将php限制到特定文件的旧解决scheme。 所以我不确定这是否真的避免了任意代码注入。

或者我应该使用try_files

使用try_filessecurity.limit_extensions=php的组合,只要确保你创build的上传文件夹完全没有机会执行任何代码。 最后一件事情是最重要的事情,唯一能够让你确保这个问题一直到最后。

例:

 /var/www/src -> execute PHP files /var/www/uploads -> only accessible for static delivery