Перейти к контенту

Нужна возможность самому указывать путь к папке кэша


Рекомендуемые сообщения

Здравствуйте! Версия 2.3.5.

 

Мне нужно, чтобы путь к папке с кэшем я мог сам задавать в файле config_global.php. Сейчас форум кэшируется в папке /cache/, как и у всех.

 

Вот и всё ТЗ :)

 

Я сам волоку в PHP, то есть можно просто подсказать, где этот путь /cache/ прописывается (надесюь, где-то в одном месте).

 

Макс

Ссылка на комментарий
Поделиться на других сайтах

Не могу обещать, что везде в коде используется именно CACHE_PATH, но можно её изменить попробовать в init.php. Если будут глюки, значит исправить в коде форума места, где вместо этой константы опять путь собирается.
Ссылка на комментарий
Поделиться на других сайтах

Саннис, спасибо за наводку, но у меня в init.php переменной CACHE_PATH нету! :) (Версия 2.3.5)

 

Про кэш в этом файле есть вот в такой строке:

 

define( 'IPS_XML_RPC_DEBUG_FILE', ROOT_PATH . 'cache/xmlrpc_debug.cgi' );

 

 

(эту строчку надо будет тоже подправить, если делать путь к кэшу отличающимся от ROOT_PATH)

 

-------------

 

Я сделал поиск по всем файлам скриптов форума и нашлось с десяток файлов с упоминанием этой переменной. Методом научного тыка нашёл файл sources/ipsclass.php, где задаётся CACHE_PATH для того случая, если он не определён:

 

		//--------------------------------
	// Set up cache path
	//--------------------------------

	if( ! defined( 'CACHE_PATH' ) )
	{
		if ( $this->vars['ipb_cache_path'] )
		{
			define( 'CACHE_PATH', $this->vars['ipb_cache_path'] );
		}
		else
		{
			define( 'CACHE_PATH', ROOT_PATH );
		}
	}

 

Как я понимаю, если в init.php мне определить CACHE_PATH, то определение в ipsclass.php уже не будет востребовано. Так? Попробую.

 

Кстати, везде в файлах путь к кэшу указывается так:

 

CACHE_PATH.'cache/....... 

 

то есть папку /cache/ переименовывать нельзя, можно менять лишь путь к ней.

 

О результатах сообщу.

Изменено пользователем mbosoy
Ссылка на комментарий
Поделиться на других сайтах

Да, вы правы, её переименовать не получится.

Если критично, может проще поставить на неё симлинк (если у вас Linux/*BSD)?

Ссылка на комментарий
Поделиться на других сайтах

Саннис, а мне не надо переименовывать папку /cache/, я хочу менять путь к ней (в ЛС я пояснял, зачем мне всё это надо: для реализации многофорумности).

 

---------------

 

ИТАК, я добавил в init.php после

 

define( 'ROOT_PATH', dirname( __FILE__ ) ."/" );

 

строчку

 

define( 'CACHE_PATH', ROOT_PATH.'/my_cache/' );

 

Папку /cache/ со всем содержимым бросил в папку /my_cache/

 

 

---------------

 

 

Захожу в админку.

 

Начали появляться ошибки путей при выборе "Настроек" для стиля. Зашёл в skin_sets.php и там, для каких строчек форум ругался, поставил ROOT_PATH вместо CACHE_PATH. Ругань прекратилась.

 

Кэши форум тоже обновляет без проблем (Попробовал ручное обновление через "Управление кэшем")

 

---------------

 

(добавил через полчаса)

 

 

 

 

Ура!

 

Везде в файле sources/ipsclass.php, где папку /cache/ предлагалось искать в корне, я поменял ROOT_PATH на CACHE_PATH, и всё заработало.

 

Потестирую ещё форум, вдруг ещё где вскроется ошибка с путями к кэшу. Кстати, это ведь недосмотр разработчиков версии 2.3.5. Если бы они сразу задали переменную CACHE_PATH в файле init.php и правильно ссылались на неё, то у меня бы сразу всё заработало. Наверное, в поздних версиях это исправили.

Изменено пользователем mbosoy
Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.