这种情况一般是因为权限问题导致的,最开始遇到这种情是用linuxeye的一键遇到的,共享出来和本地映射的文件夹里的php代码不能被解析,在虚拟机里查看文件夹环境,发现都是www的用户和用户组,但是怎么改都改不过来,在宿主机上怎么改owner也是徒劳,怎么办呢?
在Linux中运行的服务都会使用特定的用户,可以在各自的配置文件中修改:
- Nginx的工作进程默认会使用nginx这个用户
- php-fpm工作进程默认会使用php-fpm这个用户
- linuxeye一键包是www这个用户和用户组
如果是vagrant架设的虚拟linux建议做如下修改:
- linuxeye的一键包:
sudo vim options.conf
将run_user=www修改为run_user=vagrant
或修改php-fpm配置:sudo vim /usr/local/php/etc/php-fpm.conf
- 自己架设的:
sudo vim /lnmp/conf/nginx.conf
将user www www; 修改为user vagrant www;
如果是php-fpm来解析php,那么要修改php-fpm进程的所有者:
sudo vim /etc/php-fpm.d/www.conf
类似的,将user = php-fpm 改为user = vagrant