ホームページ  >  記事  >  バックエンド開発  >  mac 搭建laravel环境,使用nginx服务器, 修改blade模板后刷新页面无反应

mac 搭建laravel环境,使用nginx服务器, 修改blade模板后刷新页面无反应

WBOY
WBOYオリジナル
2016-06-06 20:16:321757ブラウズ

在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试试。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。