刚装好php环境的新手执行composer create-project后空白页或500错误,根本原因是web根目录未指向public、php扩展未启用(curl/fileinfo/mbstring)、或入口未正确路由;必须先验证php -v≥8.1且带nts、composer --version可用,再确保public为web服务器根目录并开启错误显示。

刚装好PHP环境的新手,执行composer create-project topthink/think myapp后打开浏览器却只看到空白页或500错误,根本看不到“Hello World”——这通常不是代码写错了,而是项目没放在Web可访问路径下,或PHP扩展没启用,或入口文件没被正确路由到。
确认PHP与Composer已就绪
打开终端,依次运行两行命令:
php -v → 确认输出中包含 PHP 7.4+(ThinkPHP 8 强制要求),且版本号后带 (NTS) 标识;若提示“命令未找到”,说明PHP未加入系统PATH,需回退重配环境变量。
composer --version → 必须返回类似 Composer version 2.7.x 的结果;若报错 command not found,请重新安装Composer并勾选“Add to PATH”选项。
这两步任一失败,后续所有操作都会卡住。别跳过验证,直接建项目等于往空硬盘里拷数据。
用Composer创建ThinkPHP项目
方法一:推荐在Web服务器根目录下执行(如XAMPP的htdocs、PHPStudy的WWW、或Nginx的/var/www/html):
cd /var/www/html → composer create-project topthink/think tp8
方法二:若用PHP内置服务器开发(无需Apache/Nginx),可任意目录创建,但必须手动指定public为文档根:
mkdir ~/mytp && cd ~/mytp → composer create-project topthink/think . → 完成后进入public目录再启动:php -S localhost:8000 -t public
【关键前提】 创建前务必配置国内镜像,否则可能卡死或超时:composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/。这一步漏掉,下载thinkphp主包可能耗时10分钟以上甚至失败。
启用必需的PHP扩展
ThinkPHP 8 运行依赖至少三个扩展:curl、fileinfo、mbstring。缺一不可,否则控制器无法加载或模板解析失败。
打开你的php.ini文件(位置可通过php --ini查到),搜索以下三行,确保前面的分号;已被删除:
extension=curl
extension=fileinfo
extension=mbstring
改完保存,重启Web服务或PHP-FPM进程。Windows用户注意:如果用PHPStudy或小皮面板,请在软件界面中勾选对应扩展,而非只改ini文件——面板会覆盖手动修改。
让Hello World真正显示出来
第一步:进入项目app/controller目录,新建IndexController.php,内容如下:
<?php <br>namespace app\controller;<br>class IndexController{<br> public function index(){<br> return 'Hello World!';<br> }<br>}
第二步:确保public/index.php存在且未被改动——ThinkPHP 8 默认自带该入口文件,不要删、不要重命名、不要挪动位置。
第三步:通过浏览器访问:http://localhost/tp8/public/index.php(若项目在htdocs/tp8下);或http://localhost:8000(若用PHP内置服务器启动)。
看到纯文本 Hello World! 即成功。若仍为空白,请检查PHP错误报告是否开启:在php.ini中确认display_errors = On且error_reporting = E_ALL,然后刷新页面看是否有致命错误输出。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











