Nginx Vagrant:PHP7.0-fpm.service失败,因为控制进程已退出,并显示错误代码

Nginx Vagrant:PHP7.0-fpm.service失败,因为控制进程已退出,并显示错误代码,nginx,vagrant,ubuntu-16.04,php-7,ubuntu-server,Nginx,Vagrant,Ubuntu 16.04,Php 7,Ubuntu Server,我有一个新的ubuntu/xenial64基于box的Vagrant安装。不幸的是,PHP7.0服务没有运行 如果我运行以下systemctl status php7.0-fpm.service命令,则结果如下: ubuntu@Project-Yii-Shop:~$ systemctl status php7.0-fpm.service * php7.0-fpm.service - The PHP 7.0 FastCGI Process Manager Loaded: loaded (/l

我有一个新的ubuntu/xenial64基于box的Vagrant安装。不幸的是,PHP7.0服务没有运行

如果我运行以下
systemctl status php7.0-fpm.service
命令,则结果如下:

ubuntu@Project-Yii-Shop:~$ systemctl status php7.0-fpm.service
* php7.0-fpm.service - The PHP 7.0 FastCGI Process Manager
   Loaded: loaded (/lib/systemd/system/php7.0-fpm.service; enabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Sun 2017-01-29 14:37:05 UTC; 16min ago
  Process: 2213 ExecStart=/usr/sbin/php-fpm7.0 --nodaemonize --fpm-config /etc/php/7.0/fpm/php-fpm.conf (code=exited, s
  Process: 2203 ExecStartPre=/usr/lib/php/php7.0-fpm-checkconf (code=exited, status=0/SUCCESS)
 Main PID: 2213 (code=exited, status=78)

Jan 29 14:37:04 Project-Yii-Shop systemd[1]: Stopped The PHP 7.0 FastCGI Process Manager.
Jan 29 14:37:04 Project-Yii-Shop systemd[1]: Starting The PHP 7.0 FastCGI Process Manager...
Jan 29 14:37:05 Project-Yii-Shop php-fpm7.0[2213]: [29-Jan-2017 14:37:05] ERROR: [pool www] cannot get uid for user 'va
Jan 29 14:37:05 Project-Yii-Shop php-fpm7.0[2213]: [29-Jan-2017 14:37:05] ERROR: FPM initialization failed
Jan 29 14:37:05 Project-Yii-Shop systemd[1]: php7.0-fpm.service: Main process exited, code=exited, status=78/n/a
Jan 29 14:37:05 Project-Yii-Shop systemd[1]: Failed to start The PHP 7.0 FastCGI Process Manager.
Jan 29 14:37:05 Project-Yii-Shop systemd[1]: php7.0-fpm.service: Unit entered failed state.
Jan 29 14:37:05 Project-Yii-Shop systemd[1]: php7.0-fpm.service: Failed with result 'exit-code'.
主要的问题是,我试图启用这项服务,但流浪者Ubuntu要求密码,好吧,这个流浪者Ubuntu没有任何密码。我在谷歌上搜索了这个问题,但我只看到了这个解决方案和上面的解决方案

ubuntu@Project-Yii-Shop:~$ systemctl enable php-fpm.service
==== AUTHENTICATING FOR org.freedesktop.systemd1.manage-unit-files ===
Authentication is required to manage system service or unit files.
Authenticating as: Ubuntu (ubuntu)
Password: 
polkit-agent-helper-1: pam_authenticate failed: Authentication failure
==== AUTHENTICATION FAILED ===
Failed to execute operation: Access denied
所以我不知道我应该怎么做,因为如果我在一个真正的Ubuntu服务器上安装PHP7.0(不是在Vagrant中),我不会得到这个错误

我使用具有以下配置的NGINX服务器:

location ~ \.php$ {
       include fastcgi_params;
       fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
       #fastcgi_pass   127.0.0.1:9000;
       fastcgi_pass unix:/var/run/php7.0-fpm.sock;
       try_files $uri =404;
   }
我在Vagrant文件中使用这个命令来安装PHP7.0

apt-get install -y git nginx php7.0-curl php7.0-cli php7.0-intl php7.0-mbstring php7.0-gd php-imagick php7.0-fpm php7.0-mysql php7.0-pgsql php7.0-xml php7.0-zip
该命令在流浪者启动后运行,以便运行php7.0 srevice

service php7.0-fpm restart

有人看到任何错误吗?

查看php fpm池定义(
www.conf
?),该定义可在
/etc/php/7.0/fpm/pool.d
中找到。似乎您正试图以用户“vagrant”的身份启动php fpm进程—一个似乎不存在于框中的用户

通常,用户
www-data
用于运行php fpm:

user = www-data
group = www-data

查看您的php fpm池定义(
www.conf
?),该定义可在
/etc/php/7.0/fpm/pool.d
中找到。似乎您正试图以用户“vagrant”的身份启动php fpm进程—一个似乎不存在于框中的用户

通常,用户
www-data
用于运行php fpm:

user = www-data
group = www-data

啊哈,你说得对。我检查了另一个配置文件,不是这个www.conf。我是否应该从vagrant中删除这一行
sed-I's/user=www-data/user=vagrant/g'/etc/php/7.0/fpm/pool.d/www.conf
?因为这设置了user.I根本不知道vagrant,但是从OS/PHPFPM的角度来看,PHPFPM必须与OS上存在的用户一起运行。因此,要么添加该用户,要么作为www-data.Aha运行php fpm,你说得对。我检查了另一个配置文件,不是这个www.conf。我是否应该从vagrant中删除这一行
sed-I's/user=www-data/user=vagrant/g'/etc/php/7.0/fpm/pool.d/www.conf
?因为这设置了user.I根本不知道vagrant,但是从OS/PHPFPM的角度来看,PHPFPM必须与OS上存在的用户一起运行。因此,要么添加该用户,要么将php fpm作为www数据运行。