如何在cli环境中禁用缓存?
原因是,不允许执行脚本的系统用户写入缓存目录,因此脚本无法执行。
在我的application.ini中我有
[production]
resources.cachemanager.database.frontend.name = Core
resources.cachemanager.database.frontend.customFrontendNaming = false
resources.cachemanager.database.frontend.options.lifetime = 7200
resources.cachemanager.database.frontend.options.automatic_serialization = true
resources.cachemanager.database.backend.name = File
resources.cachemanager.database.backend.customBackendNaming = false
resources.cachemanager.database.backend.options.cache_dir = HTTPDOCS_PATH "/data/cache/database"
resources.cachemanager.database.frontendBackendAutoload = false
[cli : production]
* LT]: - )
答案 0 :(得分:4)
尝试
resources.cachemanager.database.frontend.options.caching = false
在$_options
Zend_Cache_Core
属性{{1}}
答案 1 :(得分:1)
和你一样,我没有看到在父节中注册的配置部分中禁用插件的明显方法。如果Zend_Config_Ini
允许多重继承,那将会很酷,有点像HTML元素如何在class属性中有多个CSS类。 (是吗?我猜不是)。然后,您可以将插件注册放入一个部分[myplugsection]
,允许[production]
扩展[myplug]
而[cli]
则不会,就像Doctrine有actAs
个模板一样和beahviors。
接下来最好的事情可能是创建一个名为[core]的部分,其中包含您现在在[production]
中所拥有的大部分内容。 [production]
和[cli]
都可以扩展[core]
,但[production]
会注册插件而[cli]
则不会。{/ p>
当然,另一种方法是将插件注册移动到Bootstrap中,您可以更好地控制插件注册。特别是,您可以致电$front->unregisterPlugin()
,其中$front
是FrontController
。
大声思考......
干杯!