前一个项目使用的VirtualBox+Vagrant搭建的环境,未开启nfs的情况下,速度实在感人,遂此次环境未使用Vagrant,直接VirtualBox,谁知道坑爹的事情不断
VirtualBox直接搭建laravel开发环境可能遇到的坑:
一、共享目录的挂载与访问
VirtualBox开启目录共享需要安装增强插件,一般来说都会安装失败,参考:
整到安装上此增强插件后,就可以通过mount来管理挂载了,假设开启了VirtualBox的自动挂载,其会将目录自动挂载到media/下
二、共享目录php的修改权限
建议不要尝试手动去挂载,手动挂载后的目录,所属用户和用户组都是root,且无法更改,会导致php因为权限无法修改其中的文件(无论你怎么尝试,此问题耗费4H+的人奉劝)
自动挂载上的目录用户和所属组为 root:vboxsf,此时我们去修改php的启动用户和用户组
vim /usr/local/server/php/etc/php-fpm.d/www.conf复制代码
#默认user = nginxgroup = nginx#修改为user = nginxgroup = vboxsf复制代码
此处我还将nginx用户加入了vboxsf组,当然不知道起没起到决定性的作用,但建议你这样做
usermod -a -G vboxsf nginx复制代码
注意:修改用户及用户组相关配置后,重启生效
三、laravel cache 配置
清除缓存常常能解决很多问题
php artisan config:clearphp artisan cache:clearphp artisan config:cache复制代码
四、npm i
假如你需要使用node.js ,那么NPM i 安装模块的过程中可能会遇到报软连接无法使用之类的错误
VirtualBox的共享文件夹不支持软连接,所以要么
npm install --no-bin-links复制代码
告诉NPM 我用不了软连接,你给我换种玩法,或者
在本机npm i来安装模块(本机装node)