使用Zend Opcache将目录列入黑名单

use*_*277 11 php zend-framework opcache

我如何告诉Zend Opcache 不要缓存特定目录中的任何文件.例如/var/www/public_html/devzone/*

我用PHP 5.5.13Zend OPcache v7.0.4-dev

Jac*_*din 25

您应该opcache.blacklist_filename使用黑名单的文件路径设置配置值.

OPcache黑名单文件的位置.黑名单文件是一个文本文件,其中包含不应加速的文件的名称,每行一个.允许使用通配符,也可以提供前缀.以分号开头的行将被忽略为注释.


例如,创建一个新文件:

/etc/php5/opcache-blacklist.txt
Run Code Online (Sandbox Code Playgroud)

使用通配符保存:

/var/www/public_html/devzone/*
Run Code Online (Sandbox Code Playgroud)

并将黑名单文件路径添加到您的php.ini:

opcache.blacklist_filename=/etc/php5/opcache-blacklist.txt
Run Code Online (Sandbox Code Playgroud)

  • 我找到了导致它无法在Windows上运行的原因.看[这里](https://github.com/php/php-src/blob/6a010ad492ec82ce333fb4fee81fc46fc8e6a0a9/Zend/zend_virtual_cwd.c#L1263),这会导致opcache模块无法解析黑名单文件中的路径.要解决此问题,请不要在路径字符串中使用任何通配符. (2认同)