2012-05-17 4 views
0

Я унаследовал приложение, написанное с помощью Zend Framework 1.11.2. Он был перенесен на сервер, управляемый моей компанией, но некоторые функциональные возможности сайта выглядят сломанными на новом сервере из-за небольшой тонкой настройки среды.Zend Framework 1.11.2 cache_dir не доступен для записи

В частности, одно из заданий cron в системе бросает исключение, связанное с тем, что каталог кеша не доступен для записи.

Я не уверен, где каталог кеша должен сделать его доступным для записи. Я сделал небольшое чтение, и, похоже, есть каталог tmp. Может ли кто-нибудь указать мне в правильном направлении либо в каталог, либо как узнать, где он находится, если он специфичен для приложения?

Любая помощь приветствуется.

+2

Я уверен, что есть путь в описании исключения – zerkms

ответ

1

Код, по которому определяется cache_dir для использования, если он не указан, находится в Zend_Cache_Backend::getTmpDir(). Результаты специфичны для ОС и даже для среды.

Этот небольшой фрагмент кода:

require_once 'Zend/Cache/Backend.php'; 
$cache = new Zend_Cache_Backend(); 
echo $cache->getTmpDir() . PHP_EOL; 

производства /tmp на моей Ubuntu. YMMV.

1

Каталог кэша задается в Application.ini:

  • resources.cachemanager.database.backend.options.cache_dir
  • resources.cachemanager.locale.backend.options.cache_dir
  • resources.cachemanager.translations.backend.options.cache_dir
1

Для этого есть запрос функции (ZF-12214). Вы можете использовать включенный патч для обезьян-патчей ZF для отладки.

Смежные вопросы