0

0

php下载安装后opcache怎么开启_性能优化设置【指南】

看不見的法師

看不見的法師

发布时间:2026-01-03 22:25:30

|

346人浏览过

|

来源于php中文网

原创

php需编译时加--enable-opcache,windows需启用php_opcache.dll;opcache.enable和opcache.enable_cli必须同时设为1;生产环境禁用时间戳校验需配合opcache_reset()或重启服务;无共享内存时应配置opcache.file_cache。

php下载安装后opcache怎么开启_性能优化设置【指南】

确认 PHP 是否已编译支持 opcache

很多 Linux 发行版的预编译 PHP 包默认启用 opcache,但 Windows 下的官方二进制包(如 windows.php.net 下载的 ZIP 版)默认是禁用的。先运行

php -m | grep opcache
,如果没输出,说明模块未加载;再执行
php -i | grep "opcache support"
,若显示 opcache support => disabled,大概率是没启用或没编译进去。

常见原因包括:
– 编译 PHP 时未加 --enable-opcache
– Windows 下未在 php.ini 中取消 zend_extension=php_opcache.dll 的注释
– 某些 Docker 镜像(如 php:alpine)需手动 apk add php-opcache 并启用

opcache.enableopcache.enable_cli 必须设为 1

这两个开关是硬性前提,缺一不可。仅开启 opcache.enable=1 不代表 CLI 环境能用(比如 Composer 或 Artisan 命令仍不走缓存),而 opcache.enable_cli=1 默认是 0,必须显式打开才生效。

建议配置项(加到 php.iniopcache.ini):
opcache.enable=1
opcache.enable_cli=1(开发调试时很有用)
opcache.memory_consumption=128(单位 MB,小站 64–128 足够,大项目建议 256)
opcache.max_accelerated_files=10000(低于实际文件数会频繁踢出缓存)
opcache.revalidate_freq=60(秒级检查文件修改,生产环境可设为 0,配合 opcache.validate_timestamps=0 手动清理)

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

新秀企业网站系统PHP版1.1 beta6
新秀企业网站系统PHP版1.1 beta6

新秀企业网站系统PHP版是一款简洁易用、方便二次开发的PHP企业网站系统。后台功能齐全,操作简便,可开启伪静态和纯静态模式,有利于SEO优化;前台可设置成同时显示多国语言,适合用于外贸企业建站;程序代码清晰简洁,可扩展性良好,安全可靠。新秀企业网站系统PHP版可免费下载使用,可用于商业用途,没有功能和时效限制,除版权标识外,所有代码都允许修改。后台功能简介:1.基本设置:基本信息,联系方式,网站设

下载

避免 opcache.validate_timestamps=0 导致代码更新不生效

这是线上最常踩的坑:为追求极致性能把 opcache.validate_timestamps=0,结果改完 PHP 文件刷新页面没变化。它会让 OPCache 完全跳过文件时间戳校验,除非手动调用 opcache_reset() 或重启 PHP-FPM / Apache。

更稳妥的做法:
开发环境:保持 opcache.validate_timestamps=1 + opcache.revalidate_freq=2
– 生产环境:设 opcache.validate_timestamps=0,但部署流程中必须包含 opcache_reset()systemctl reload php-fpm
– 不要用 opcache_invalidate($file, true) 逐个刷新,开销大且易漏

if (function_exists('opcache_reset')) {
    opcache_reset();
}

opcache.file_cache 对容器和无共享内存环境很关键

在某些受限环境(如 Docker 容器、Windows WSL、部分云函数),shm 共享内存可能不可用或不稳定,此时 opcache 会自动降级为文件缓存 —— 但前提是显式配置了 opcache.file_cache 路径,否则直接失效。

配置示例:
opcache.file_cache=/tmp/opcache(确保目录存在且 PHP 进程有写权限)
opcache.file_cache_consistency_checks=1(启用一致性校验,防缓存污染)
opcache.file_cache_only=0(默认即可,设为 1 则强制只用文件缓存,性能略低)
注意:/tmp 在某些系统(如 systemd-tmpfiles 清理策略下)可能被定时清空,应改用持久路径如 /var/cache/php-opcache

OPCache 的真正瓶颈往往不在参数值本身,而在缓存键的生成逻辑和文件变更检测机制是否匹配你的部署方式。特别是使用 rsync 同步代码、或挂载只读 volume 时,stat() 时间戳行为可能异常,这时候光调大内存也没用。

相关文章

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

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

下载

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

热门AI工具

更多
DeepSeek
DeepSeek

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

豆包大模型
豆包大模型

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

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

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

文心一言
文心一言

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

讯飞写作
讯飞写作

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

即梦AI
即梦AI

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

ChatGPT
ChatGPT

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

相关专题

更多
composer是什么插件
composer是什么插件

Composer是一个PHP的依赖管理工具,它可以帮助开发者在PHP项目中管理和安装依赖的库文件。Composer通过一个中央化的存储库来管理所有的依赖库文件,这个存储库包含了各种可用的依赖库的信息和版本信息。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

161

2023.12.25

windows查看端口占用情况
windows查看端口占用情况

Windows端口可以认为是计算机与外界通讯交流的出入口。逻辑意义上的端口一般是指TCP/IP协议中的端口,端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于FTP服务的21端口等等。怎么查看windows端口占用情况呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

1496

2023.07.26

查看端口占用情况windows
查看端口占用情况windows

端口占用是指与端口关联的软件占用端口而使得其他应用程序无法使用这些端口,端口占用问题是计算机系统编程领域的一个常见问题,端口占用的根本原因可能是操作系统的一些错误,服务器也可能会出现端口占用问题。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

1170

2023.07.27

windows照片无法显示
windows照片无法显示

当我们尝试打开一张图片时,可能会出现一个错误提示,提示说"Windows照片查看器无法显示此图片,因为计算机上的可用内存不足",本专题为大家提供windows照片无法显示相关的文章,帮助大家解决该问题。

835

2023.08.01

windows查看端口被占用的情况
windows查看端口被占用的情况

windows查看端口被占用的情况的方法:1、使用Windows自带的资源监视器;2、使用命令提示符查看端口信息;3、使用任务管理器查看占用端口的进程。本专题为大家提供windows查看端口被占用的情况的相关的文章、下载、课程内容,供大家免费下载体验。

463

2023.08.02

windows无法访问共享电脑
windows无法访问共享电脑

在现代社会中,共享电脑是办公室和家庭的重要组成部分。然而,有时我们可能会遇到Windows无法访问共享电脑的问题。这个问题可能会导致数据无法共享,影响工作和生活的正常进行。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

2361

2023.08.08

windows自动更新
windows自动更新

Windows操作系统的自动更新功能可以确保系统及时获取最新的补丁和安全更新,以提高系统的稳定性和安全性。然而,有时候我们可能希望暂时或永久地关闭Windows的自动更新功能。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

874

2023.08.10

windows boot manager
windows boot manager

windows boot manager无法开机的解决方法:1、系统文件损坏,使用Windows安装光盘或USB启动盘进入恢复环境,选择修复计算机,然后选择自动修复;2、引导顺序错误,进入恢复环境,选择命令提示符,输入命令"bootrec /fixboot"和"bootrec /fixmbr",然后重新启动计算机;3、硬件问题,使用硬盘检测工具进行扫描和修复;4、重装操作系统。本专题还提供其他解决

1976

2023.08.28

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

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

3

2026.03.11

热门下载

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

精品课程

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

共137课时 | 13.3万人学习

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号