加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 消息:cache_dir必须是一个目录

发布时间:2020-12-13 21:47:43 所属栏目:PHP教程 来源:网络整理
导读:大家好,我在使用Zend Framework时遇到了一些问题.我首先得到以下消息: 消息:无法确定临时目录,请手动指定cache_dir. 我搜索了谷歌,发现这篇文章: Zend Framework : Could not determine temp directory,please specify a cache_dir manually 我读了它,现
大家好,我在使用Zend Framework时遇到了一些问题.我首先得到以下消息:
消息:无法确定临时目录,请手动指定cache_dir.
我搜索了谷歌,发现这篇文章: Zend Framework : Could not determine temp directory,please specify a cache_dir manually
我读了它,现在当我填写表单时,我收到以下错误:
?(我把…放在错误中的任何地方意味着域.)消息:cache_dir必须是一个目录

- #0 /home/daan/domains/../library/Zend/Cache/Backend/File.php(154): Zend_Cache::throwException('cache_dir must ...')
 - #1 /home/daan/domains/../library/Zend/Cache/Backend/File.php(121): Zend_Cache_Backend_File->setCacheDir('/domains/daan.h...')
 - #2 /home/daan/domains/../library/Zend/Cache.php(153): Zend_Cache_Backend_File->__construct(Array)
 - #3 /home/daan/domains/../library/Zend/Cache.php(94): Zend_Cache::_makeBackend('File',Array,false,false)
 - #4 /home/daan/domains/../library/Zend/Locale/Data.php(307): Zend_Cache::factory('Core','File',Array)
 - #5 /home/daan/domains/../library/Zend/Locale/Format.php(796): Zend_Locale_Data::getList('nl_NL','day')
 - #6 /home/daan/domains/../library/Zend/Locale/Format.php(1106): Zend_Locale_Format::_parseDate('16-02-2013',Array)
 - #7 /home/daan/domains/../library/Zend/Date.php(4763): Zend_Locale_Format::getDate('16-02-2013',Array)
 - #8 /home/daan/domains/../library/Zend/Validate/Date.php(175): Zend_Date::isDate('16-02-2013','MM-DD-YYYY',NULL)
 - #9 /home/daan/domains/../library/Zend/Form/Element.php(1391): Zend_Validate_Date->isValid('16-02-2013',Array)
 - #10 /home/daan/domains/../library/Zend/Form.php(2135): Zend_Form_Element->isValid('16-02-2013',Array)
 - #11/home/daan/domains/../application/controllers/BugController.php(27): Zend_Form->isValid(Array)
 - #12 /home/daan/domains/../library/Zend/Controller/Action.php(513): BugController->submitAction()
 - #13 /home/daan/domains/../library/Zend/Controller/Dispatcher/Standard.php(289): Zend_Controller_Action->dispatch('submitAction')
 - #14 /home/daan/domains/../library/Zend/Controller/Front.php(954): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http),Object(Zend_Controller_Response_Http))
 - #15 /home/daan/domains/../library/Zend/Application/Bootstrap/Bootstrap.php(97): Zend_Controller_Front->dispatch()
 - #16 /home/daan/domains/../library/Zend/Application.php(366): Zend_Application_Bootstrap_Bootstrap->run()
 - #17 /home/daan/domains/../public_html/index.php(26): Zend_Application->run()
 - #18 {main}

的application.ini:

resources.cachemanager.configFiles.frontend.name = File
resources.cachemanager.configFiles.frontend.customFrontendNaming = false
resources.cachemanager.configFiles.frontend.options.lifetime = false
resources.cachemanager.configFiles.frontend.options.automatic_serialization = true    
resources.cachemanager.configFiles.backend.name = File
resources.cachemanager.configFiles.backend.customBackendNaming = false
resources.cachemanager.configFiles.backend.options.cache_dir = APPLICATION_PATH      "/../tmp"
resources.cachemanager.configFiles.frontendBackendAutoload = false

Initcache:

protected function _initCaching() {
$frontend = array(
'lifetime' => $time,'automatic_serialization' => true
);
$backend = array(
'cache_dir' => sys_get_temp_dir(),);
$cache = Zend_Cache::factory('core',$frontend,$backend);
Zend_Registry::set('cache',$cache);

}

文件夹结构:
htpasswd的
应用
AWStats软件
图书馆
日志
public_ftp
的public_html
TMP

解决方法

cache_dir必须是一个目录:

当您将代码移动到另一台主机或服务器时,通常会出现此问题.这个问题主要有两个解决方案

1 – 确保您的缓存目录是可写的,或者您可以写入magento的var文件夹

但有时这种情况不起作用,所以这里是替代解决方案.转到这个位置lib / Zend / Cache / Backend /
并打开file.php文件,你会看到类似这样的代码

protected $_options = array(
        'cache_dir' => null,'file_locking' => true,'read_control' => true,'read_control_type' => 'crc32','hashed_directory_level' => 0,'hashed_directory_umask' => 0700,'file_name_prefix' => 'zend_cache','cache_file_umask' => 0600,'metadatas_array_max_size' => 100
    );

更改此代码如下

protected $_options = array(
        'cache_dir' => '/var/www/html/webkul/magento/tmp','metadatas_array_max_size' => 100
    );

根据您的配置分配cache_dir的路径.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读