在mac上搭建好了nginx+php+laravel,沒有做過多的配置,只是將nginx的root路徑配置到laravel的public下面,然後設定監聽的是80連接埠,laravel welcome頁面的google字型已去掉,不是google問題。
如果我使用php artisan serve使用laravel內建的伺服器,可以正常訪問到(http://localhost:8000)laravel預設的welcome頁面,修改views/welcome.blade.php,重新整理頁面也都正常.
使用nginx訪問80連接埠:訪問普通的php檔案正常(http://localhost/a.php)比如在public下面建立一個a.php,可以訪問列印phpinfo等。但是訪問(http://localhost)訪問不了,頁面顯示空白,這個連結是通過nginx的伺服器。
PS:如果我先訪問了內建的8000連接埠,就可以訪問80連接埠,但是我改了模板檔案後直接存取80連接埠是不行的。
請問這個是哪裡配置的問題或者是其他問題
Laravel版本:5.2
php版本:7.0.2
已解決
:我把laravel/storage 和 laravel/bootstrap/cache的許可權重新改了一下就可以了
sudo chmod -R 777 laravel/storage
sudo chmod -R 777 laravel/bootstrap/cache
不過還是不清楚為什麼使用php artisan serve就不會出現這種情況
回複內容:
在mac上搭建好了nginx+php+laravel,沒有做過多的配置,只是將nginx的root路徑配置到laravel的public下面,然後設定監聽的是80連接埠,laravel welcome頁面的google字型已去掉,不是google問題。
如果我使用php artisan serve使用laravel內建的伺服器,可以正常訪問到(http://localhost:8000)laravel預設的welcome頁面,修改views/welcome.blade.php,重新整理頁面也都正常.
使用nginx訪問80連接埠:訪問普通的php檔案正常(http://localhost/a.php)比如在public下面建立一個a.php,可以訪問列印phpinfo等。但是訪問(http://localhost)訪問不了,頁面顯示空白,這個連結是通過nginx的伺服器。
PS:如果我先訪問了內建的8000連接埠,就可以訪問80連接埠,但是我改了模板檔案後直接存取80連接埠是不行的。
請問這個是哪裡配置的問題或者是其他問題
Laravel版本:5.2
php版本:7.0.2
已解決
:我把laravel/storage 和 laravel/bootstrap/cache的許可權重新改了一下就可以了
sudo chmod -R 777 laravel/storage
sudo chmod -R 777 laravel/bootstrap/cache
不過還是不清楚為什麼使用php artisan serve就不會出現這種情況
使用php artisan serve的時候是你本使用者調用的php,所以不會出現許可權不足的情況。
而nginx運行時候的賬戶未必有專案檔的寫入權限,這個要看看nginx設定檔中配置的user是哪個了,將storage的所屬賬戶改成那個就行了
本地環境 把php.ini的錯誤提示開啟,運行一下看看哪裡出問題了,我猜測應該是你mac環境的php版本低的原因,換php5.6試試。