欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

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

程序员文章站 2022-05-04 16:18:42
...
在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试试。

相关标签: php laravel