最省事路径是用 lnmp.org 的 lnmp 一键安装包,它适配主流系统、预置多版本 php 切换、ssl 自动部署和防跨站配置,避免手搭常见的 php-fpm.sock 权限、open_basedir 错误及版本不匹配问题。

直接装 LNMP 一键包还是手搭?
腾讯云 CVM 上跑 PHP,最省事的路径不是自己编译 Nginx + PHP + MySQL,而是用 lnmp.org 的 LNMP 一键安装包——它适配主流 CentOS/Ubuntu,预置了 PHP 多版本切换、SSL 自动部署、防跨站配置等关键能力。手搭看似可控,实则容易卡在 php-fpm.sock 权限、open_basedir 路径错误、或 Nginx 与 PHP 版本不匹配上。
- CentOS 7/8 推荐用
lnmp install(脚本自动选源、关 SELinux、调 ulimit) - Ubuntu 20.04+ 注意先禁用
systemd-resolved,否则apt update可能超时中断安装 - 别用腾讯云市场镜像里的“LNMP 环境”,多数是老旧 PHP 7.2 + 静态编译模块,后续升级会崩
PHP 版本选 8.1 还是 8.2?
PHP 8.2 是当前稳定主力,但得看你的项目是否依赖扩展。比如 mcrypt 在 7.2 就被移除了,而 yaml 扩展在 Ubuntu 22.04 的 apt 源里默认没打包,得手动编译;redis 和 mysqli 基本没问题。
- 新项目无脑选
php-8.2,性能和类型系统更稳 - 老项目还在用
mysql_connect()函数?必须降级到php-7.4或改代码,PHP 8+ 已彻底删除ext/mysql - 通过
lnmp php-install装多版本后,用lnmp php-version切换,别直接改/usr/local/php/bin/php软链
Nginx 配置 PHP 时最常见的 502 错误
502 Bad Gateway 十有八九是 PHP-FPM 没起来,或者 socket 文件路径/权限不对。LNMP 默认用 unix:/tmp/php-cgi.sock,但如果你改过 listen 为 127.0.0.1:9000,Nginx 的 fastcgi_pass 就必须同步改,漏一个就 502。
腾讯云通用文字识别(高精度版)技能包。用户发送/粘贴图片、提供图片URL或要求识别图片文字时自动调用。支持中文、英文、中英混合、数字及特殊符号的检测与识别,返回文字框位置与内容。适用于文字较多、版式复杂、准召率要求高的场景。
- 检查
php-fpm是否运行:ps aux | grep php-fpm,没进程就lnmp php start - 确认
listen.owner和listen.group是www(LNMP 默认用户),否则 Nginx worker 进程读不到 socket - 如果用了
chroot或security.limit.extensions限制,上传的.php文件可能被拒,日志里会写Access denied
HTTPS + PHP 上传大文件怎么调?
默认 Nginx + PHP 上传上限是 2MB,开 HTTPS 后还容易因 client_max_body_size 和 post_max_size 不一致导致 413 或静默失败。腾讯云 CVM 没特殊限制,全靠你自己配。
- Nginx 配置加:
client_max_body_size 100m(放server块里) - PHP 配置改
php.ini:upload_max_filesize = 100M、post_max_size = 100M、max_execution_time = 300 - 改完必须执行
lnmp php reload,不是restart——reload 不中断已有请求 - 别忘了检查腾讯云安全组是否放行 443 端口,以及域名是否已解析到 CVM 公网 IP
真正麻烦的从来不是装 PHP,而是 PHP 进程崩溃后日志里只有一行 child exited on signal 11——这时候就得看 /usr/local/php/var/log/php-fpm.log,再结合 strace -p 抓句柄,而不是重装。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!










