Laravel 5新建项目后出现空白页及奇怪语法错误求助
解决Laravel新项目空白页+语法错误问题
你的问题核心其实是Laravel版本与PHP版本不兼容,我来一步步帮你分析和解决:
问题根源
当你执行laravel new myprojectname时,Composer默认会拉取最新的Laravel版本,但最新的Laravel(比如9.x、10.x)要求PHP版本至少为8.0,而你的PHP7.1.14完全不满足这个要求。新版本Laravel代码里使用了PHP7.1不支持的语法特性(比如严格类型声明、箭头函数、??=运算符等),这就是日志里出现语法错误的直接原因,最终导致页面空白。
解决方案
1. 安装适配PHP7.1的Laravel版本
Laravel 5.8是支持PHP7.1的最高版本(要求PHP7.1.3及以上,刚好匹配你的7.1.14)。你可以通过指定版本号来创建兼容的项目:
composer create-project laravel/laravel:5.8 myprojectname
2. 修正权限设置(别用不安全的777!)
777权限会带来极大的安全风险,正确的做法是让Web服务器用户(比如Nginx/Apache的www-data用户)拥有storage和bootstrap/cache文件夹的所有权,再设置合理权限:
# 赋予web服务器用户文件夹所有权 sudo chown -R www-data:www-data storage bootstrap/cache # 设置文件夹权限 chmod -R 755 storage bootstrap/cache # 可选:给文件夹内的文件设置更严谨的权限 find storage bootstrap/cache -type f -exec chmod 644 {} \;
3. 开启调试模式方便排查
在项目根目录的.env文件里,把APP_DEBUG改为true:
APP_DEBUG=true
这样本地开发时会直接显示错误详情,不用再去翻日志,排查问题更高效。
内容的提问来源于stack exchange,提问作者Attila Naghi
相关产品推荐
相关产品推荐

