描述:ThinkPHP 8.0 在 Linux 云服务器运行失败,首要检查 PHP ≥ 8.0.2 及 mbstring、curl、openssl、json、pdo 等扩展是否启用;Nginx 配置需指向 public 目录并使用标准 try_files 重写规则;runtime 目录须赋权且 SELin…
ThinkPHP 8.0 在 Linux 云服务器运行失败,首要检查 PHP ≥ 8.0.2 及 mbstring、curl、openssl、json、pdo 等扩展是否启用;Nginx 配置需指向 public 目录并使用标准 try_files 重写规则;runtime 目录须赋权且 SELinux 需调整上下文;敏感路径必须用 Nginx location 指令 deny all 屏蔽。
ThinkPHP 8.0 要求 PHP ≥ 8.0.2,且必须启用 mbstring、curl、openssl、json、pdo(及对应数据库驱动,如 pdo_mysql)。很多云服务器默认装的是 PHP 7.4 或未启用关键扩展,直接 composer install 会卡在依赖检查或运行时报 Class "think\App" not found。
php -v 确认版本;若低于 8.0.2,别硬升,建议重装 PHP(如 Ubuntu 用 apt install php8.1 php8.1-mbstring php8.1-curl php8.1-openssl php8.1-json php8.1-pdo php8.1-mysql)php -m | grep -E "(mbstring|curl|openssl|json|pdo)" 检查扩展是否加载成功;没输出就说明没启用,需检查 /etc/phpfpm/php.ini 里对应 extension= 行是否取消注释php.ini 后必须重启 php8.1-fpm(或对应版本服务),不是只 reload NginxThinkPHP 默认开启 URL 重写,但云服务器上 Nginx 常因配置路径错位或未开启 try_files 导致静态资源能访问、路由全 404。错误典型现象是访问 /index.php/welcome 正常,但访问 /welcome 报 404。
root 指向的是 public/ 目录,不是项目根目录(即不能是 /var/www/myapp,而应是 /var/www/myapp/public)1 2 3 |
|
rewrite ^(.*)$ /index.php?s=$1 last; 这类旧写法,TP8 已弃用 s= 参数模式https://example.com/app/),需在 location 块里加 alias 并调整 try_files,且在 .env 中设 APP_SUB_DOMAIN_DEPLOY=false 和 URL_HTML_SUFFIX= 清空后缀本地开发没问题,一上云服务器就写不了日志、缓存,常见报错是 The stream or file "/www/wwwroot/myapp/runtime/log/202405/xxx.log" could not be opened。根本原因不是磁盘满,而是权限链断裂:PHP-FPM 进程用户(如 www-data 或 nginx)无权写入 runtime/ 目录。
chown -R www-data:www-data /var/www/myapp/runtime(Ubuntu)或 chown -R nginx:nginx /var/www/myapp/runtime(CentOS),再 chmod -R 755 /var/www/myapp/runtimesetenforce 0,若日志立刻恢复,说明是 SELinux 限制,需执行 chcon -R -t httpd_sys_rw_content_t /var/www/myapp/runtimeruntime/ 放进 Git;生产环境应确保 .env 中 APP_DEBUG=false,否则调试信息可能暴露路径结构runtime/ 或 vendor/ 目录?Nginx 必加两行屏蔽云服务器暴露在公网,爬虫或扫描器会尝试访问 /runtime/、/vendor/、/config/ 等敏感路径,一旦返回 200 或目录列表,等于把钥匙递出去。这不是“可能”,是几乎必然发生。
立即学习“PHP免费学习笔记(深入)”;
1 2 |
|
^~ 前缀,确保优先级高于正则匹配.env、.git、composer.json:1 |
|
安全不是加个密码就完事;云服务器上,目录遍历、错误泄露、扩展缺失这三块最容易被利用,修完记得用 curl 测一遍 /runtime/ 是否真返回 403。
5元云服务器:入门级新手首选 我是一名刚毕业的大学生,对编程充满了热情,但现实总是骨感一些。刚踏入职场,我梦想着能独立开发一个网站或应用,却苦于没有足够的资源。买一台实体服务器太贵,租个虚拟空间又觉得…
6元服务器租用,高性价比VPS主机推荐 记得去年我刚开始创业,做了一个小型网站来展示我的产品。那时,我手头紧,预算有限,却急着需要一个可靠的服务器来托管网站。作为一个普通上班族,我对技术懂得不多,但我…
2021年云服务器优惠套餐推荐 嗨,朋友们!你是否曾经在深夜里,面对一堆代码和服务器错误,感叹说:“为什么我的项目老是卡顿?”如果是这样的话,那你可能正在寻找2021年云服务器优惠套餐的解决方案。作为…
云服务器市场增长 大家好,作为一个每天依赖云服务器的开发者,我亲身感受到市场的飞速膨胀。想象一下,几年前我还得在办公室的老旧电脑前苦苦挣扎,处理数据时总是卡顿不堪,但现在,只需轻轻一点,就能在云端获得…
云服务器10元/月:经济型服务价格新记录 最近,云服务器的价格被推向了一个新低,10元一个月的方案让许多人惊喜不已。这不仅仅是数字上的变化,更是科技服务普惠化的一个标志。云服务器作为一种基于云计算的虚…
盘点最新优惠 云服务器网站推荐 探盘最新优惠 云服务器网站推荐 云计算技术的迅猛发展,使得云服务器成为企业和个人开发者不可或缺的基础设施。云服务器,作为一种基于虚拟化技术的计算资源,允许用户按需获取计…