Ошибка при установке livestreet в отдельную папку.

Кто-нибудь подскажите что нужно сделать для установки ls в отдельную папку…

Папка установки:
/ls

config/config.php:
/**
 * Настройка путей
 */
define('DIR_WEB_ROOT','http://'.$_SERVER['HTTP_HOST'].'/ls');
define('DIR_STATIC_ROOT',DIR_WEB_ROOT); // чтоб можно было статику засунуть на отдельный сервер
define('DIR_SERVER_ROOT',$_SERVER['DOCUMENT_ROOT'].'/ls');
define('DIR_STATIC_SKIN',DIR_STATIC_ROOT.'/'.DIR_SMARTY_TEMPLATE); 
define('DIR_UPLOADS','/uploads');
define('DIR_UPLOADS_IMAGES',DIR_UPLOADS.'/images');

/**
 * Системные настройки
 */
define('SYS_OFFSET_REQUEST_URL',1); // иногда помогает если сервер использует внутренние реврайты


define('SYS_CACHE_DIR',$_SERVER['DOCUMENT_ROOT'].'/tmp/'); // каталог для файлового кеша, также используется для временных картинок


Ошибка:
Uncaught exception 'Zend_Cache_Exception' with message 'cache_dir must be a directory' in /pub/home/a90098626/htdocs/ls/classes/lib/external/DklabCache/Zend/Cache.php:141
Stack trace:
#0 /pub/home/a90098626/htdocs/ls/classes/lib/external/DklabCache/Zend/Cache/Backend/File.php(146): Zend_Cache::throwException('cache_dir must ...')
#1 /pub/home/a90098626/htdocs/ls/classes/lib/external/DklabCache/Zend/Cache/Backend/File.php(121): Zend_Cache_Backend_File->setCacheDir('/pub/home/a9009...')
#2 /pub/home/a90098626/htdocs/ls/classes/modules/sys_cache/Cache.class.php(71): Zend_Cache_Backend_File->__construct(Array)
#3 /pub/home/a90098626/htdocs/ls/classes/engine/Engine.class.php(68): Cache->Init()
#4 /pub/home/a90098626/htdocs/ls/classes/engine/Router.class.php(94): Engine->InitModules()
#5 /pub/home/a90098626/htdocs/ls/index.php(31): Router->Exec()
#6 {main}


Спасибо!

21 комментарий

avatar
проблема не в установке в отдельную папку, а в правильности каталога для временных файлов, решение http://livestreet.ru/blog/questions/35.html#comment259
  • ort
  • +1
avatar
СпасибО!
avatar

А отчего может быть такая ошибка?

Fatal error: Call to a member function load() on a non-object in /pub/home/a90098626/htdocs/ls/classes/modules/sys_cache/Cache.class.php on line 105
 
avatar
не создался объект кеширования, перед этой ошибкой должна была вылезти другая. Это ты скорее всего что то с путями намудрил
avatar
Не, других нету)
А пути ты имеешь в виду SYS_CACHE_DIR?
avatar
все пути, насколько я понимаю, прописаны как надо…
avatar
проверь создается ли в строке 87 http://trac.assembla.com/livestreet/browser/trunk/classes/modules/sys_cache/Cache.class.php объект $this->oBackendCache
avatar

Dklab_Cache_Backend_TagEmuWrapper Object
(
    [_backend:private] => Dklab_Cache_Backend_Profiler Object
        (
            [_backend:private] => Zend_Cache_Backend_File Object
                (
                    [_options:protected] => Array
                        (
                            [cache_dir] => /pub/home/a90098626/tmp/
                            [file_locking] => 1
                            [read_control] => 1
                            [read_control_type] => crc32
                            [hashed_directory_level] => 0
                            [hashed_directory_umask] => 448
                            [file_name_prefix] => livestreet_cache
                            [cache_file_umask] => 384
                            [metadatas_array_max_size] => 100
                        )
 
                    [_metadatasArray:private] => Array
                        (
                        )
 
                    [_directives:protected] => Array
                        (
                            [lifetime] => 3600
                            [logging] =>
                            [logger] =>
                        )
 
                )
avatar
тогда не знаю, нужно копать
avatar

Такая же ситуация. Хост — Fedora9, Apache2, php v.5.2.6
В строке 87 [Cache.class.php] объект $this->oBackendCache:
object(Dklab_Cache_Backend_TagEmuWrapper)[13]
  private '_backend' =>
    object(Dklab_Cache_Backend_Profiler)[19]
      private '_backend' =>
        object(Zend_Cache_Backend_File)[20]
          protected '_options' =>
            array
              ...
          private '_metadatasArray' =>
            array
              ...
          protected '_directives' =>
            array
              ...
      private '_incrementor' =>
        array
          0=>
            object(Cache)[1]
              ...
          1 => string 'CalcStats' (length=9)
 
Сама ошибка — та же: «Fatal error: Call to a member function load() on a non-object in /var/www/blog/httpdocs/classes/modules/sys_cache/Cache.class.php on line 113»
Двиг установлен в корень сайта.
avatar
я потом бросил разбираться и сменил хостинг:)
avatar
Это моя машина. Я ее не могу бросить :)
avatar
ну значит читай про cache:) и про плагин Dklab_Cache
avatar
Забыл сказать: версия LiveStreet 0.2 от 05.11.2008
avatar
может в php.ini стоит zend.ze1_compatibility_mode = true?
avatar
В яблочко!
Для всех хостов не стал отключать (всетки, разные приходится скрипты тестить), а вот для блого-хоста в .htaccess добавил «php_value zend.ze1_compatibility_mode Off». Этого хватило.
Спасибо! Теперь будем смотреть далее.
avatar

ну и отлично :)
старый пхп не понимал конструкций вроде:
$obj1->obj2->property
avatar
предлагаю описать проблему и решение в wiki.
Кстати, отличный пример когда человек воспользовался поиском для решения проблемы!:)
avatar
>>отличный пример когда человек воспользовался поиском
Если это про меня, то я бы сказал, что не совсем удачный пример; потому что собственно решение (настройка php) подсказал мне автор cms.
avatar
нет, я к тому что тема поднята в том топике, где она встречалась:) А то тут часто любят новые топики создавать…
avatar
Ну я, вроде, не первую пиятилетку в Сети. Научился :)
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.