slim php dd model,PHP全局使用Laravel辅助函数dump和dd
參考了PHP 全局使用 Laravel 輔助函數(shù) dd中的內(nèi)容,只是針對(duì)我自己配置過(guò)程中出現(xiàn)的問(wèn)題進(jìn)行一次總結(jié)。
Composer的COMPOSER_HOME環(huán)境變量不同
根據(jù)composer官方說(shuō)明,如果系統(tǒng)沒(méi)有COMPOSER_HOME環(huán)境變量,它在各個(gè)系統(tǒng)上的默認(rèn)值分別為:*nix /home//.composer。
OSX /Users//.composer。
Windows C:\Users\\AppData\Roaming\Composer。
但是我的卻不是。我的本級(jí)默認(rèn)地址為~/.cache/composer,所以最簡(jiǎn)單的方法是直接使用了export進(jìn)行導(dǎo)入export COMPOSER_HOME=$HOME/.composer #將這行加入到.bashrc或.bash_profile或.zshrc
開(kāi)發(fā)環(huán)境不同
原文中使用的是vagrant+homestead開(kāi)發(fā)環(huán)境,而我本地使用的是vagrant+lnmp的一鍵安裝包,區(qū)別就在于homestead環(huán)境的登錄用戶及nginx用戶都是vagrant。而我本機(jī)的登錄用戶為vagrant,而nginx用戶為www。
全局composer安裝后我將auto_prepend_file = /home/vagrant/.composer/vendor/autoload.php加入到php.ini中發(fā)現(xiàn)報(bào)如下錯(cuò)誤:Warning: Unknown: failed to open stream: Permission denied in Unknown on line 0
Fatal error: Unknown: Failed opening required '/home/vagrant/.composer/vendor/autoload.php' (include_path='.:/usr/local/php/lib/php') in Unknown on line 0
但是我在CLI下執(zhí)行一個(gè)test.php程序發(fā)現(xiàn)是可以正常調(diào)用的。所以第一反應(yīng)也是www用戶沒(méi)有權(quán)限導(dǎo)致。于是我將www用戶加入到了vagrant用戶組:usermod -a G vagrant www
到這里以為大功告成,沒(méi)想到問(wèn)題依舊如上。
參考了網(wǎng)上的大多數(shù)教程,也包括把a(bǔ)utoload.php修改為777權(quán)限依然不行。最后的最后我執(zhí)行下面的命令:[root@localhost home]# ll
total 0
drwx------. 6 vagrant vagrant 167 Oct 11 17:12 vagrant
看到這里我也是醉了,因?yàn)?home/vagrant的g和o都沒(méi)有權(quán)限,所以導(dǎo)致nginx的www用戶都進(jìn)入不了/home/vagrant目錄所以才會(huì)報(bào)出Permission denied。于是我直接chmod 750 vagrant
其是最根本的原因依然是登錄用戶與nginx執(zhí)行用戶不一樣導(dǎo)致權(quán)限問(wèn)題。不解的是不知道為什么useradd添加的用戶家目錄是700。猜測(cè)可能是和umask有關(guān)
---update---
查了資料發(fā)現(xiàn)之所以用戶的家目錄權(quán)限為700是因?yàn)樵?etc/login.defs中有有一個(gè)配置UMASK 077 #用戶家目錄建立的 umask ,因此權(quán)限會(huì)是 700
所以最終的權(quán)限為777-077=700
總結(jié)
以上是生活随笔為你收集整理的slim php dd model,PHP全局使用Laravel辅助函数dump和dd的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: php调用其它控制器,TP框架控制器里面
- 下一篇: java游戏2333整合包,我的世界魔法