0

0

解决 PHP 扩展缺失问题:json 和 mbstring 未加载的排查与修复

霞舞

霞舞

发布时间:2025-10-27 09:19:33

|

351人浏览过

|

来源于php中文网

原创

解决 PHP 扩展缺失问题:json 和 mbstring 未加载的排查与修复

php 脚本报告 `json` 或 `mbstring` 等扩展缺失,即使您已在 cpanel 等控制面板中启用它们时,问题往往在于服务器环境未能识别这些配置变更。本教程将指导您如何使用 `phpinfo()` 验证扩展的实际激活状态,并通过重启 web 服务器或 php-fpm 服务来彻底解决此问题。

在部署 PHP 应用程序时,开发者经常会遇到“PHP 扩展缺失”的错误提示,例如 ERROR: The requested PHP extension json is missing from your system. 和 ERROR: The requested PHP extension mbstring is missing from your system.。尽管许多用户在 cPanel 或其他主机管理界面中确认已启用这些扩展,但错误依然存在。这通常表明 PHP 运行环境尚未正确加载或识别这些配置更改。

核心诊断:利用 phpinfo() 验证扩展状态

解决此类问题的首要步骤是确认当前运行的 PHP 解释器是否真的加载了所需的扩展。phpinfo() 是一个强大的 PHP 内置函数,它能输出 PHP 环境的详细配置信息,包括所有已加载的扩展模块。

如何生成 phpinfo() 文件

  1. 创建文件: 在您的网站根目录(或任何可通过浏览器访问的目录)下,创建一个名为 info.php 的新文件。
  2. 添加代码: 将以下 PHP 代码复制并粘贴到 info.php 文件中:
    <?php
    phpinfo();
    ?>
  3. 保存并访问: 保存文件后,通过您的网络浏览器访问 http://您的域名/info.php。

如何解读 phpinfo() 输出

在打开的 phpinfo() 页面中,您需要查找 json 和 mbstring 扩展的信息:

  1. 搜索功能: 使用浏览器的搜索功能(通常是 Ctrl+F 或 Cmd+F)来搜索 "json" 和 "mbstring"。
  2. 验证状态:
    • 如果这些扩展已成功加载,您将看到各自的配置段落,其中包含版本信息和相关设置。例如,json 扩展通常会显示其版本,而 mbstring 会显示其各种字符集处理设置。
    • 如果搜索不到这些扩展的任何信息,或者它们显示为禁用状态(尽管这种情况较少见),则明确表明当前运行的 PHP 解释器未能加载它们。

根本解决:重启相关服务

即使您在 cPanel 或其他管理界面中启用了 PHP 扩展,这些更改也可能不会立即生效。PHP 解释器(或其后端服务,如 PHP-FPM)通常需要重启才能应用新的配置。

立即学习PHP免费学习笔记(深入)”;

重启步骤

根据您的服务器环境和权限,重启方法有所不同:

Otter.ai
Otter.ai

一个自动的会议记录和笔记工具,会议内容生成和实时转录

下载
  1. Cpanel 用户:

    • 登录您的 cPanel 账户。
    • 导航至 "软件" 或 "PHP 版本" 部分。
    • 通常,您会找到一个选项来选择或切换 PHP 版本。有时,仅仅重新选择当前正在使用的 PHP 版本并保存,或者点击“设置”/“应用”按钮,就会触发 PHP 服务的重启。
    • 如果 cPanel 没有提供直接的 PHP 服务重启按钮,您可能需要联系您的主机提供商寻求帮助,或者在某些情况下,重启整个 Web 服务器(如果您的权限允许)。
  2. VPS/独立服务器用户(通过 SSH 访问):

    • 通过 SSH 连接到您的服务器。
    • 重启 Web 服务器:
      • 对于 Apache:sudo systemctl restart apache2 或 sudo service apache2 restart
      • 对于 Nginx:sudo systemctl restart nginx 或 sudo service nginx restart
    • 重启 PHP-FPM 服务(如果您的 PHP 配置使用 FPM):
      • PHP-FPM 服务的名称可能因 PHP 版本而异。您可以使用 ps aux | grep php-fpm 命令来查找当前运行的 PHP-FPM 版本,例如 php7.4-fpm、php8.1-fpm。
      • 重启命令示例:sudo systemctl restart php7.4-fpm 或 sudo service php7.4-fpm restart

重启后验证

  1. 服务重启完成后,再次访问您之前创建的 http://您的域名/info.php。
  2. 确认 "json" 和 "mbstring" 扩展现在已在 phpinfo() 输出中正确显示。
  3. 安全提示: 为了避免泄露服务器配置信息,在确认问题解决后,务必删除您创建的 info.php 文件。

注意事项与常见问题

  • 多 PHP 版本环境: 确保您启用的扩展是针对您的网站实际使用的 PHP 版本。在 cPanel 等环境中,您可以为不同的域名或子域名配置不同的 PHP 版本。
  • PHP Handler 类型: 检查您的 PHP Handler(如 mod_php、FPM、CGI)。不同的 Handler 可能有不同的配置加载方式和重启机制。例如,使用 mod_php 的 Apache 通常在重启 Apache 后生效,而使用 PHP-FPM 则需要重启 PHP-FPM 服务。
  • 共享主机限制: 在某些共享主机环境中,您可能没有直接重启服务的权限。在这种情况下,联系您的主机提供商是解决问题的最佳途径。
  • 错误日志: 如果在执行上述步骤后问题依然存在,请检查 Web 服务器(Apache/Nginx)和 PHP 的错误日志文件。这些日志通常位于 /var/log/ 目录下,它们可能会提供更详细的线索来诊断问题。

总结

当 PHP 应用程序报告 json 或 mbstring 等扩展缺失时,即使您已在控制面板中启用它们,这通常是由于服务器环境未能正确加载或应用配置更改所致。解决此问题的关键在于:

  1. 使用 phpinfo() 进行诊断: 通过生成 phpinfo() 文件来验证扩展的实际加载状态。
  2. 重启相关服务: 根据您的服务器环境,重启 Web 服务器(Apache 或 Nginx)和/或 PHP-FPM 服务,以确保新的配置生效。
  3. 注意环境细节: 仔细检查 PHP 版本匹配、PHP Handler 类型,并在共享主机环境下联系服务商寻求帮助。

遵循这些步骤,您将能够有效地排查并解决 PHP 扩展缺失的问题,确保您的应用程序正常运行。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

WorkBuddy
WorkBuddy

腾讯云推出的AI原生桌面智能体工作台

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
nginx 重启
nginx 重启

nginx重启对于网站的运维来说是非常重要的,根据不同的需求,可以选择简单重启、平滑重启或定时重启等方式。本专题为大家提供nginx重启的相关的文章、下载、课程内容,供大家免费下载体验。

248

2023.07.27

nginx 配置详解
nginx 配置详解

Nginx的配置是指设置和调整Nginx服务器的行为和功能的过程。通过配置文件,可以定义虚拟主机、HTTP请求处理、反向代理、缓存和负载均衡等功能。Nginx的配置语法简洁而强大,允许管理员根据自己的需要进行灵活的调整。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

522

2023.08.04

nginx配置详解
nginx配置详解

NGINX与其他服务类似,因为它具有以特定格式编写的基于文本的配置文件。本专题为大家提供nginx配置相关的文章,大家可以免费学习。

610

2023.08.04

tomcat和nginx有哪些区别
tomcat和nginx有哪些区别

tomcat和nginx的区别:1、应用领域;2、性能;3、功能;4、配置;5、安全性;6、扩展性;7、部署复杂性;8、社区支持;9、成本;10、日志管理。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

244

2024.02.23

nginx报404怎么解决
nginx报404怎么解决

当访问 nginx 网页服务器时遇到 404 错误,表明服务器无法找到请求资源,可以通过以下步骤解决:1. 检查文件是否存在且路径正确;2. 检查文件权限并更改为 644 或 755;3. 检查 nginx 配置,确保根目录设置正确、没有冲突配置等等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

714

2024.07.09

Nginx报404错误解决方法
Nginx报404错误解决方法

解决方法:只需要加上这段配置:try_files $uri $uri/ /index.html;即可。想了解更多Nginx的相关内容,可以阅读本专题下面的文章。

3618

2024.08.07

nginx部署php项目教程汇总
nginx部署php项目教程汇总

本专题整合了nginx部署php项目教程汇总,阅读专题下面的文章了解更多详细内容。

56

2026.01.13

nginx配置文件详细教程
nginx配置文件详细教程

本专题整合了nginx配置文件相关教程详细汇总,阅读专题下面的文章了解更多详细内容。

72

2026.01.13

TypeScript类型系统进阶与大型前端项目实践
TypeScript类型系统进阶与大型前端项目实践

本专题围绕 TypeScript 在大型前端项目中的应用展开,深入讲解类型系统设计与工程化开发方法。内容包括泛型与高级类型、类型推断机制、声明文件编写、模块化结构设计以及代码规范管理。通过真实项目案例分析,帮助开发者构建类型安全、结构清晰、易维护的前端工程体系,提高团队协作效率与代码质量。

26

2026.03.13

热门下载

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

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PHP课程
PHP课程

共137课时 | 13.5万人学习

JavaScript ES5基础线上课程教学
JavaScript ES5基础线上课程教学

共6课时 | 11.3万人学习

PHP新手语法线上课程教学
PHP新手语法线上课程教学

共13课时 | 1.0万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号