ThinkPHP8.0怎么部署到Linux服务器?

风涛吖_2986

风涛吖_2986

2026-10-07

458人浏览

原创

thinkphp 8.0 部署 linux 服务器核心是环境、目录、请求三者精准匹配:php≥8.0且cli/fpm版本一致,项目结构以public为根目录,nginx配置需正确指向public并禁用fastcgi_split_path_info。

thinkphp8.0怎么部署到linux服务器?

ThinkPHP 8.0 部署到 Linux 服务器,核心就三件事:环境对得上、目录摆得对、请求转得准。不是代码有问题,90% 是这三处没调好。

确认 PHP 版本和关键扩展

TP8 强制要求 PHP ≥ 8.0.0,且 CLI 和 PHP-FPM 必须版本一致——很多人在宝塔里选了 PHP 8.2,但终端执行 php -v 还是 7.4,这是因为 PATH 没刷新,或 Nginx 调用的是另一套 PHP-FPM。

  • 运行 php -v 看 CLI 版本,必须 ≥ 8.0.0(推荐 8.1 或 8.2)
  • 运行 ps aux | grep php-fpm 找出 PHP-FPM 进程路径,再用该路径执行 /usr/bin/php-fpm81 -v 确认 FPM 版本
  • 检查必需扩展是否启用:php -m | grep -E "mbstring|openssl|pdo|mysqlnd|fileinfo",缺一不可
  • Ubuntu/Debian 用户注意:/etc/php/8.1/fpm/php.ini 和 /etc/php/8.1/cli/php.ini 是两个独立文件,Nginx 只读 FPM 配置

项目结构与 vendor 初始化

别直接上传完整项目包,也别指望 composer 自动“猜对”版本。TP8 在 PHP 版本不足时会静默降级安装 TP6,表面正常,实则报 Class 'think\App' not found。

Linux installer
Linux installer

先解析安全源,运行本地CLI安装、启动、卸载Linux桌面应用。用户请求时使用。

下载
  • 先清空目标目录,确保无残留
  • 在项目根目录执行:composer create-project topthink/think tp8 --no-interaction -vvv,加 -vvv 可看到真实下载过程
  • 国内务必配阿里云镜像:composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
  • 如果提示 vendor/autoload.php 不存在,不要重装,进项目根目录直接运行 composer install
  • 若报权限错误,检查当前用户对 vendor/ 和 runtime/ 是否有写权限

Nginx 配置必须精准指向 public

把整个项目根目录设为网站根目录是高危操作——app/、config/、.env 全部可被直接访问。TP8 的入口只在 public/index.php。

  • 站点配置中,root 必须设为 /var/www/your-project/public(绝对路径),不能是项目根目录
  • 伪静态规则用标准写法,清空原内容后粘贴:
location / {
  try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
  fastcgi_pass unix:/run/php/php8.1-fpm.sock;
  fastcgi_index index.php;
  fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
  include fastcgi_params;
}
  • 务必删掉所有 fastcgi_split_path_info 行,TP8 不依赖它,留着会导致路由错乱
  • SCRIPT_FILENAME 用 $realpath_root,不用 $document_root,避免软链接下报 “No input file specified”

权限、缓存与环境变量收尾

部署后白屏、500 或日志不写,大概率卡在这几步。

  • runtime/ 目录必须存在且可写:mkdir -p runtime/log runtime/cache runtime/session,再 chown -R www:www runtime/(宝塔默认用户组)
  • 生产环境执行:composer install --optimize-autoloader --no-dev,去掉开发依赖
  • .env 文件权限设为 644,放在项目根目录;APP_DEBUG = false,DEFAULT_TIMEZONE = Asia/Shanghai
  • 多环境需靠系统级 APP_ENV 变量,不是 .env 里的值。可在 Nginx 的 fastcgi_param 中透传:fastcgi_param APP_ENV production;

php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!

相关文章

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
服务器是什么
服务器是什么

服务器是一种计算机硬件设备或软件程序,它具有强大的计算和存储能力,用请求、存储数据和提供服务。它在互联网中着关重要的作用,为用户提供各种服务和资源。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.15

437

5

连接apple id服务器时出错
连接apple id服务器时出错

连接apple id服务器时出错的原因包括网络连接问题、服务器问题、Apple ID账户问题、设备问题、防火墙或安全软件问题、时间和日期设置问题、Apple服务器维护等。本专题为大家提供apple id相关的文章、下载、课程内容,供大家免费下载体验。

2023.09.08

900

5

搭建互联网服务器
搭建互联网服务器

搭建互联网服务器需要:1、选择合适的硬件和操作系统,第一步是选择合适的硬件和操作系统;2、安装和配置操作系统,是搭建互联网服务器的关键步骤;3、安装和配置服务器软件,是搭建互联网服务器的下一步,常见的服务器软件包括Apache、Nginx、Tomcat等;4、配置防火墙和安全性,是搭建互联网服务器的重要步骤;5、域名解析和配置,是搭建互联网服务器的最后一步。

2023.09.19

2712

5

如何查看服务器状态
如何查看服务器状态

查看服务器状态的方法有使用命令行工具、图形界面工具、监控工具、日志文件和远程管理工具等。本专题为大家提供服务器状态相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.09

916

5

服务器域名转接慢怎么解决
服务器域名转接慢怎么解决

服务器域名转接慢的解决办法有DNS优化、服务器优化、CDN加速、前端优化和网络优化等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.17

809

5

服务器评测软件
服务器评测软件

服务器评测软件有PassMark Software、CPU-Z、GPU-Z、CrystalDiskMark、IOmeter、JMeter、LoadRunner、Apache Bench等等。详细介绍:1、PassMark Software是一款综合性的服务器性能测试软件,可以评估服务器在各种负载条件下的性能;2、CPU-Z是一款可以提供服务器CPU详细信息的软件等等。

2023.10.17

414

3

如何开启TFTP服务器
如何开启TFTP服务器

开启TFTP服务器的步骤包括选择TFTP服务器软件、下载和安装软件、配置TFTP服务器以及启动和测试服务器等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.18

2456

4

服务器负载不兼容怎么解决
服务器负载不兼容怎么解决

解决方法:1、增加服务器资源;2、负载均衡;3、优化应用程序;4、增加缓存机制;5、分布式架构;6、限流和熔断;7、自动化扩容。想知道更详细服务器负载不兼容的解决方法,可以访问本专题下面的文章。

2023.10.20

4552

4

宽带如何接入服务器
宽带如何接入服务器

宽带接入服务器的方法有ADSL宽带接入服务器、光纤接入服务器、无线接入服务器和以太网接入服务器等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.20

727

5

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
墨刀帮助中心
墨刀帮助中心

共0课时 | 0人学习

MyEclipse学习中心
MyEclipse学习中心

共0课时 | 0人学习

Apache Subversion 官方手册
Apache Subversion 官方手册

共0课时 | 0人学习