wiki:XcacheIni.zh

Version 9 (modified by moo, 17 months ago) (diff)

--

XCache 的 INI 配置

终于到了解释 xcache.ini 的时候了, 不管你有没有PHP INI 基础知识.

载入 XCache 模块

;; 非 windows 例子:
extension = xcache.so
;; Windows 系统例子:
; extension = php_xcache.dll

自 3.0 版本开始不再支持使用 zend_extension 加载 xcache

XCache Administration

NameDefaultChangeable
xcache.admin.user"mOo"PHP_INI_SYSTEM
xcache.admin.pass""PHP_INI_SYSTEM
xcache.admin.enable_auth"on"PHP_INI_SYSTEM
xcache.testOffPHP_INI_SYSTEM
xcache.coredump_directory""PHP_INI_SYSTEM
xcache.disable_on_crash"off"PHP_INI_SYSTEM
xcache.admin.user string
验证名.
xcache.admin.pass string
md5 后的验证密码, 亦即 md5(您的密码), 留空则禁用管理页面.
xcache.test string
仅在测试一些功能的时候才启用. 如果您不知道这个功能的作用, 则您不需要知道.
xcache.coredump_directory string
设置在 crash (SIGSEGV/SIGABRT) 时保存 core dump 文件的路径. 留空则禁止, 或者设置为类似 "/tmp/phpcore/" 的目录. 确保这个路径可以被 php 写入文件. (与 open_basedir 无关).
xcache.disable_on_crash boolean
发生任何 crash 时, 自动禁止 XCache 缓存
xcache.admin.enable_auth string
如果你打算自己处理验证, 用这个选项禁止 HTTP 验证功能. 值得注意的是任意 vhost 用户都可以安装一个 XCache admin 页面, 如果禁止了内建 HTTP 验证, 则他们亦不需要权限即可访问管理页面. 出于安全考虑, 您应该尽量考虑保留 XCache 内建验证功能, 针对 XCache admin 页面特定地址取消网页服务器的 mod_auth 这个选项仅在 1.2.x 系列有作用, 起始版本 1.2.1

XCache Cacher

NameDefaultChangeable
xcache.shm_scheme"mmap"PHP_INI_SYSTEM
xcache.mmap_path"/dev/zero"PHP_INI_SYSTEM
xcache.readonly_protectionOffPHP_INI_SYSTEM
xcache.size0PHP_INI_ALL
xcache.count1PHP_INI_SYSTEM
xcache.slots8KPHP_INI_SYSTEM
xcache.ttl0PHP_INI_SYSTEM
xcache.gc_interval0PHP_INI_SYSTEM
xcache.cacherOnPHP_INI_PERDIR
xcache.statOnPHP_INI_PERDIR
xcache.var_size0PHP_INI_SYSTEM
xcache.var_count1PHP_INI_SYSTEM
xcache.var_slots8KPHP_INI_SYSTEM
xcache.var_ttl0PHP_INI_ALL
xcache.var_maxttl0PHP_INI_SYSTEM
xcache.var_gc_interval300PHP_INI_SYSTEM
xcache.shm_scheme string
决定 XCache 如何从系统分配共享内存
xcache.mmap_path string
对于 *nix, xcache.mmap_path 是 文件路径, 不是目录. 对于 Win32, xcache.mmap_path 只是匿名的 map 名, 不是实际的文件路径. 如果您要启用 ReadonlyProtection 请用类似 "/tmp/xcache" 的路径. 2 组 php 不该共用同一个路径 (/dev/zero 除外).
xcache.readonly_protection boolean
如果启用了 ReadonlyProtection, 将会略微降低性能, 但是会提高一定的安全系数. 这个选项对于 xcache.mmap_path = /dev/zero 无效.
xcache.size int
0 禁止, 非 0 则启用缓存器. 请注意您系统所允许的 mmap 最大值.
xcache.count int
指定将 cache 切分成多少块. 参考 SplittedCache
xcache.slots size
只是作为 hash 槽个数的参考值, 您可以放心地缓冲超过这个个数的项目.
xcache.ttl seconds
设置缓冲项目的 Ttl (Time To Live) 值, 0=永不过期.
xcache.gc_interval seconds
检查过期项目, 回收内存空间的间隔.
xcache.cacher boolean
使用/不使用 opcode 缓存器. xcache.size = 0 时无效.
xcache.stat boolean
使用 stat() 发现检查脚本更新.
xcache.var_size int
xcache.var_count int
xcache.var_slots size
xcache.var_gc_interval seconds
同上, 不过用于数据缓冲而不是 opcode 缓冲.
xcache.var_ttl seconds
xcache_(get|set|inc|dec) 等的默认 ttl 值.
xcache.var_maxttl seconds
最大 ttl 值, 程序无法指定超过这个最大值的 ttl.

XCache Optimizer

NameDefaultChangeable
xcache.optimizerOffPHP_INI_ALL
xcache.optimizer boolean
启用优化器 (目前无效).

XCache Coverager

NameDefaultChangeable
xcache.coveragerOffPHP_INI_PERDIR
xcache.statOnPHP_INI_PERDIR
xcache.coveragedump_directory"/tmp/pcov/"PHP_INI_SYSTEM
xcache.coverager boolean
启用代码覆盖信息采集到. 启用后 xcache.coveragedump_directory 设置以及 xcache_coverager_start/stop/get/clean() 才可以使用. (启用后会对降低影响)
xcache.coverager_autostart boolean
每个页面请求自动调用 xcache_coverager_start
xcache.coveragedump_directory string
Directory to dump coverage data. Make sure it's readable (care open_basedir) by coverage viewer script. Requires xcache.coverager=On