0

0

宝塔PHP8.4与Apache搭配卡顿_优化PHP8.4加Apache性能方法【教程】

星夢妙者

星夢妙者

发布时间:2026-01-11 18:54:10

|

273人浏览过

|

来源于php中文网

原创

宝塔面板中PHP 8.4+Apache性能优化需五步:一、切换MPM为event并调优参数;二、禁用非必要扩展并强化Opcache(含JIT);三、启用HTTP/2与Brotli压缩;四、PHP-FPM改Unix Socket及ondemand模式;五、关闭或缓冲访问日志。

宝塔php8.4与apache搭配卡顿_优化php8.4加apache性能方法【教程】

如果您在宝塔面板中使用PHP 8.4与Apache组合运行网站时出现页面加载缓慢、请求响应延迟或CPU占用持续偏高现象,则可能是由于默认配置未针对PHP 8.4新特性及Apache工作模式进行适配。以下是优化PHP 8.4加Apache性能的具体方法:

一、调整Apache多路处理模块(MPM)配置

Apache默认启用prefork MPM,该模式在处理PHP 8.4的ZTS(Zend Thread Safety)兼容性时存在线程阻塞与内存冗余问题;切换为event MPM可提升并发处理能力,并降低每个请求的内存开销。

1、登录宝塔面板,进入【软件商店】→【已安装】→找到【Apache】→点击【设置】→【配置修改】。

2、在配置文件顶部查找LoadModule mpm_prefork_module modules/mod_mpm_prefork.so,将其整行注释(在行首添加#)。

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

3、取消注释以下三行(确保其未被#开头):
LoadModule mpm_event_module modules/mod_mpm_event.so
LoadModule http2_module modules/mod_http2.so
LoadModule remoteip_module modules/mod_remoteip.so

4、向下滚动至<IfModule mpm_event_module>区块,将StartServers设为4MaxRequestWorkers设为150MinSpareThreads设为25MaxSpareThreads设为75ThreadsPerChild设为25MaxConnectionsPerChild设为1000

5、保存配置,返回Apache设置页点击【重载配置】。

二、禁用PHP 8.4中非必要扩展与启用Opcache深度优化

PHP 8.4默认启用部分调试类扩展(如xdebug、tracy)及低频功能扩展(如pspell、enchant),会显著拖慢请求初始化速度;同时Opcache默认配置未启用JIT编译与最大缓存粒度,需手动强化。

1、进入宝塔【软件商店】→【PHP管理】→选择PHP 8.4→【配置文件】。

2、定位到;zend_extension=xdebug.so;extension=tracy.so等行,确认其全部以分号开头(即已被禁用);若未禁用,手动添加;

3、查找opcache.enable=1,确保其值为1;继续查找并修改以下参数:
opcache.jit=1255
opcache.jit_buffer_size=256M
opcache.memory_consumption=512
opcache.max_accelerated_files=100000
opcache.validate_timestamps=0(生产环境关闭校验)
opcache.revalidate_freq=0

4、保存后,在同一页面点击【重载配置】,再点击【重启】PHP服务。

三、配置Apache启用HTTP/2与Brotli压缩

HTTP/2支持多路复用与头部压缩,可减少TCP连接数与传输体积;Brotli相比Gzip平均压缩率提升15%–20%,尤其对PHP生成的HTML/CSS/JS文本更高效,二者协同可显著缩短TTFB时间。

1、确认Apache已启用mod_http2mod_brotli(步骤一中已加载,若未加载则补上LoadModule brotli_module modules/mod_brotli.so)。

腾讯交互翻译
腾讯交互翻译

腾讯AI Lab发布的一款AI辅助翻译产品

下载

2、进入【网站】→选择目标站点→【设置】→【配置文件】,在<VirtualHost *:443>区块内(HTTPS环境下)添加:
Protocols h2 http/1.1
BrotliCompressionQuality 11
BrotliCompressionLevel 11

3、在同一配置文件的<IfModule mod_deflate.c>区块中,替换原有AddOutputFilterByType指令为:
AddOutputFilterByType BROTLI_COMPRESS text/html text/plain text/css text/javascript application/javascript application/json application/xml

4、保存配置,执行apachectl configtest验证语法无误后,点击【重载配置】。

四、限制PHP-FPM子进程模型并绑定Unix Socket

宝塔默认使用TCP套接字连接PHP-FPM,网络栈开销大;改用Unix Socket可消除IP协议栈处理,降低延迟;同时将PHP-FPM从static模式改为ondemand,避免空闲进程长期驻留内存。

1、进入【PHP管理】→【PHP 8.4】→【设置】→【PHP-FPM设置】→【高级配置】。

2、将listen路径由127.0.0.1:9000改为/www/wwwroot/php-fpm-84.sock

3、将process_manager值由static改为ondemand

4、设置start_servers = 2max_children = 30min_spare_servers = 2max_spare_servers = 10max_requests = 2000

5、保存后,在【网站】→目标站点→【设置】→【PHP版本】中,确认PHP版本右侧显示“Unix Socket”连接方式;若仍显示TCP,点击右侧【切换PHP版本】重新选择PHP 8.4。

五、关闭Apache访问日志写入与启用内存映射日志缓冲

高频访问场景下,Apache默认每请求写入一次access.log会造成大量磁盘I/O等待;通过禁用访问日志或切换为内存映射缓冲模式,可消除该瓶颈。

1、进入【网站】→目标站点→【设置】→【日志管理】,关闭【启用网站日志】开关。

2、如需保留日志,返回【Apache设置】→【配置修改】,在主配置末尾添加:
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
CustomLog "|bin/rotatelogs -l /www/wwwlogs/example.com-access.log.%Y-%m-%d 86400" combined

3、在同配置文件中查找LogLevel行,将其值设为warn以降低错误日志输出频率。

4、保存并重载Apache配置。

相关文章

数码产品性能查询
数码产品性能查询

该软件包括了市面上所有手机CPU,手机跑分情况,电脑CPU,电脑产品信息等等,方便需要大家查阅数码产品最新情况,了解产品特性,能够进行对比选择最具性价比的商品。

下载

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

热门AI工具

更多
DeepSeek
DeepSeek

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

豆包大模型
豆包大模型

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

WorkBuddy
WorkBuddy

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

腾讯元宝
腾讯元宝

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

文心一言
文心一言

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

讯飞写作
讯飞写作

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

即梦AI
即梦AI

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

ChatGPT
ChatGPT

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

相关专题

更多
json数据格式
json数据格式

JSON是一种轻量级的数据交换格式。本专题为大家带来json数据格式相关文章,帮助大家解决问题。

457

2023.08.07

json是什么
json是什么

JSON是一种轻量级的数据交换格式,具有简洁、易读、跨平台和语言的特点,JSON数据是通过键值对的方式进行组织,其中键是字符串,值可以是字符串、数值、布尔值、数组、对象或者null,在Web开发、数据交换和配置文件等方面得到广泛应用。本专题为大家提供json相关的文章、下载、课程内容,供大家免费下载体验。

547

2023.08.23

jquery怎么操作json
jquery怎么操作json

操作的方法有:1、“$.parseJSON(jsonString)”2、“$.getJSON(url, data, success)”;3、“$.each(obj, callback)”;4、“$.ajax()”。更多jquery怎么操作json的详细内容,可以访问本专题下面的文章。

335

2023.10.13

go语言处理json数据方法
go语言处理json数据方法

本专题整合了go语言中处理json数据方法,阅读专题下面的文章了解更多详细内容。

82

2025.09.10

pdf怎么转换成xml格式
pdf怎么转换成xml格式

将 pdf 转换为 xml 的方法:1. 使用在线转换器;2. 使用桌面软件(如 adobe acrobat、itext);3. 使用命令行工具(如 pdftoxml)。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

1948

2024.04.01

xml怎么变成word
xml怎么变成word

步骤:1. 导入 xml 文件;2. 选择 xml 结构;3. 映射 xml 元素到 word 元素;4. 生成 word 文档。提示:确保 xml 文件结构良好,并预览 word 文档以验证转换是否成功。想了解更多xml的相关内容,可以阅读本专题下面的文章。

2119

2024.08.01

xml是什么格式的文件
xml是什么格式的文件

xml是一种纯文本格式的文件。xml指的是可扩展标记语言,标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言。想了解更多相关的内容,可阅读本专题下面的相关文章。

1168

2024.11.28

堆和栈的区别
堆和栈的区别

堆和栈的区别:1、内存分配方式不同;2、大小不同;3、数据访问方式不同;4、数据的生命周期。本专题为大家提供堆和栈的区别的相关的文章、下载、课程内容,供大家免费下载体验。

443

2023.07.18

C# ASP.NET Core微服务架构与API网关实践
C# ASP.NET Core微服务架构与API网关实践

本专题围绕 C# 在现代后端架构中的微服务实践展开,系统讲解基于 ASP.NET Core 构建可扩展服务体系的核心方法。内容涵盖服务拆分策略、RESTful API 设计、服务间通信、API 网关统一入口管理以及服务治理机制。通过真实项目案例,帮助开发者掌握构建高可用微服务系统的关键技术,提高系统的可扩展性与维护效率。

76

2026.03.11

热门下载

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

精品课程

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

共137课时 | 13.4万人学习

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号