lnmp中的lamp和laravel適配時的主要大坑總結

lnmp特指lnmp.org提供的一鍵安裝包,在安裝時提供lamp的選項。在這個版本下的安裝的apache(2.2或者2.4版)和本身獨立安裝的存在不少不一樣和坑,配合laravel配置造成的坑主要有如下幾點:
1. Server註冊的服務並非service httpd, 因此不能用service httpd restart來重啓apache服務器加載配置。 真正重啓服務器的默認路徑爲 sudo /etc/init.d/httpd restart, 此外查看服務器運行狀態能夠直接使用sudo lnmp status來查看。
2. 接上一條,除了httpd沒法查看版本,此版本的apache也找不到apachectl這個可執行文件,沒法查看版本安裝目錄也不一樣於官方版本。
3. httpd.conf的DocumentRoot配置徹底無效,懷疑lnmp提供apache安裝的時候動了什麼手腳,和一般直接修改httpd.conf的方法不一樣,限制爲只能新建立vhost,在新的虛擬主機裏面定義localhost域名和root目錄。可是使用 sudo lnmp vhost add 命令添加一臺虛擬主機後,務必務必找到其配置文件, 在/usr/local/apache/conf/vhost 目錄下的(vhost域名.conf)localhost.conf 文件內,注意有一行 php_admin_value open_basedir "var/www/laravel/public/:/tmp/:/var/tmp/:/proc/" 必定必定要把那個「public」刪掉,這個徹底是lnmp安裝vhost腳本的畫蛇添足,會致使運行laravel時報錯:open_basedir restrciton in effect..."", 具體緣由在於laraval內容require文件時會訪問public上層目錄,這裏這行命令就阻止laravel訪問上層應用根目錄。
4. 文件夾權限問題,apache的httpd.conf默認用戶是www,組是www,默認文件夾權限是755,可是laravel裏面有另外兩個文件夾須要用戶寫權限,應該是storage和bootstrap,這兩個文件給了777權限,可是實際部署時必定注意權限問題,目前對權限沒有可用最小化配置。php

相關文章
相關標籤/搜索