必须用composer create-project topthink/think tp8 --stability=stable --prefer-dist --remove-vcs命令初始化,确保PHP≥8.1、五项扩展齐全、入口指向public目录,执行php think run后访问http://127.0.0.1:8000见欢迎页即成功。

想在5分钟内跑起一个可访问的ThinkPHP 8.0项目,不是改配置、不是补文件、不是猜路径——必须用composer create-project命令拉取完整骨架,并确保PHP环境、扩展、入口路径三者严丝合缝,漏掉任意一环都会卡在白屏或404。
确认PHP环境与核心扩展是否就绪
先打开终端,执行php -v,输出必须显示PHP 8.1.0或更高版本,低于8.1会直接报ParseError: syntax error, unexpected token "string"并中断安装。
接着运行php -m | grep -E "curl|mbstring|json|openssl|fileinfo",五项必须全部出现。Windows用户特别注意:php.ini里extension=php_openssl.dll和extension=php_fileinfo.dll这两行不能被分号注释;Linux用户要确认CLI和Web SAPI用的是同一份配置,别只改了/etc/php/8.1/apache2/php.ini却忘了/etc/php/8.1/cli/php.ini。
【关键前提】若php -i | grep "Configuration File"显示CLI配置路径与Web服务器不一致,create-project即使成功,后续php think run也会因扩展缺失而报错。
立即学习“PHP免费学习笔记(深入)”;
执行Composer安装并指定稳定版
在目标父目录下(如/var/www或D:\htdocs)执行:
composer create-project topthink/think tp8 --stability=stable --prefer-dist --remove-vcs
其中tp8是项目文件夹名,可按需改成myapp等;--stability=stable防止拉到dev-main分支(那是TP7预览版,文档与TP8不兼容);--prefer-dist强制走ZIP包下载,绕开国内Git克隆卡死问题;--remove-vcs删掉vendor内所有.git,避免未来git push时污染远程仓库。
别加--no-interaction——它会跳过.env初始化交互,导致APP_DEBUG=false默认关闭,错误全被吞掉,只剩空白页。
启动内置服务器验证是否可运行
第一步:进入项目根目录cd tp8。
第二步:执行php think run(不是serve,TP8已弃用该命令)。
第三步:浏览器访问http://127.0.0.1:8000,看到ThinkPHP 8.0欢迎页即成功。
若报Class 'think\App' not found,说明vendor/autoload.php未加载,90%是没进对目录——检查当前路径是否含composer.json和public/子目录;若报Command "run" is not defined,说明你还在项目外执行,或vendor/bin/think权限不足(Linux/macOS下执行chmod +x vendor/bin/think)。
快速修正常见白屏与404问题
方法一:首页空白但无报错 → 立即检查.env中APP_DEBUG=true是否生效,再确认runtime/目录是否可写(Linux/macOS下执行chmod -R 755 runtime)。
方法二:访问http://127.0.0.1:8000返回404 → 不是代码问题,是Web服务器root没指向public/目录。Apache需把DocumentRoot设为/path/to/tp8/public,Nginx需把root设为同路径,并确保重写规则含try_files $uri $uri/ /index.php?$query_string;。
方法三:php think run启动后页面空白 → 进public/目录再执行php -S localhost:8000 router.php,这是TP8官方路由引导文件,缺它所有请求都fallback失败。



















