vagrant+;nginx+;php fpm

vagrant+;nginx+;php fpm,php,nginx,permissions,vagrant,Php,Nginx,Permissions,Vagrant,我有一个带有LEMP(linux、nginx、mariadb、php)堆栈的vagrant box用于开发webapp,我目前在配置nginx和php fpm时遇到一些问题。我正在使用puppet和puPHPet来配置VM php fpm和nginx组合似乎无法写入文件(即生成的日志文件、框架发布的资产(yii2)等) 使用apache而不是nginx,这个项目运行得很好,因此我放弃了一个编程问题,并且我一直遵循nginx安装指南,仍然收到诸如“目录不能通过Web进程写入”或“权限被拒绝”之类的

我有一个带有LEMP(linux、nginx、mariadb、php)堆栈的vagrant box用于开发webapp,我目前在配置nginx和php fpm时遇到一些问题。我正在使用puppet和puPHPet来配置VM

php fpm和nginx组合似乎无法写入文件(即生成的日志文件、框架发布的资产(yii2)等)

使用apache而不是nginx,这个项目运行得很好,因此我放弃了一个编程问题,并且我一直遵循nginx安装指南,仍然收到诸如“目录不能通过Web进程写入”或“权限被拒绝”之类的错误消息

根据建议,我设置了
/etc/php5/fpm/php.ini
选项
cgi.fix\u pathinfo=0

nginx/sites available/site.conf

server {
 listen                *:80;

 server_name           site.dev;
 client_max_body_size 128M;

 root /var/www/frontend/web;
 index  index.php;

 access_log            /var/log/nginx/test.access.log;
 error_log             /var/log/nginx/test.error.log;
 location / {
  root  /var/www/frontend/web;
  try_files $uri $uri/ index.php /index.php$is_args$args;
 }

 location ~ \.php$ {
  root  /var/www/frontend/web;
  index  index.html index.htm index.php;
  fastcgi_index index.php;
  fastcgi_param SCRIPT_FILENAME $request_filename;
  fastcgi_param APP_ENV dev;
  fastcgi_pass 127.0.0.1:9000;
  fastcgi_split_path_info ^(.+\.php)(/.*)$;
  include fastcgi_params;
 }


 sendfile off;
}
user = www-data
group = www-data
listen-owner = www-data
listen-group = www-data
listen-mode = 0660
php fpm/www.conf

server {
 listen                *:80;

 server_name           site.dev;
 client_max_body_size 128M;

 root /var/www/frontend/web;
 index  index.php;

 access_log            /var/log/nginx/test.access.log;
 error_log             /var/log/nginx/test.error.log;
 location / {
  root  /var/www/frontend/web;
  try_files $uri $uri/ index.php /index.php$is_args$args;
 }

 location ~ \.php$ {
  root  /var/www/frontend/web;
  index  index.html index.htm index.php;
  fastcgi_index index.php;
  fastcgi_param SCRIPT_FILENAME $request_filename;
  fastcgi_param APP_ENV dev;
  fastcgi_pass 127.0.0.1:9000;
  fastcgi_split_path_info ^(.+\.php)(/.*)$;
  include fastcgi_params;
 }


 sendfile off;
}
user = www-data
group = www-data
listen-owner = www-data
listen-group = www-data
listen-mode = 0660
我也看到过其他帖子,其中的监听模式被注释掉了,我尝试了这两种方法,并将模式设置为
0666
,但仍然没有成功

我还尝试将权限从vagrant的内部和外部设置为
0777
,以覆盖我知道框架用于写入数据的文件夹,但仍然没有成功

我在工作中配置了一个非常类似的项目,与它的工作方式相同,但这个项目没有,我找不到区别(事实上,在第一次尝试失败后,我从这个项目中获取了配置文件来设置新项目)

ps aux|grep php

root      php-fpm: master process (/etc/php5/fpm/php-fpm.conf)
www-data  php-fpm: pool www                                                       
www-data  php-fpm: pool www                                                       
不同项目中的目录似乎有相同的权限号,但在w eorks上,另一个没有

我完全不懂!非常欢迎您的想法