Настройка memcached в 1С-Битрикс или отправь свой сайт в космос

Настройка memcached в 1С-Битрикс или отправь свой сайт в космос

Для настройки memcached для сайтов 1С-Битрикс требуется

  1. Проверить установлен ли memcache и memcached в PHP, проверить это можно зайдя в настройки: Настройки - Производительность - PHP нажимаем Настройки PHP

переходим на страницу phpinfo.php и по поиску ищем memcache и memcached если данных пунктов нет или доступен только memcache требуется обратится к разработчику для установки данных библиотек

Проверка memcached

  1. После того как выяснили что все установлено, переходим в настройки 1С-Битрикс: Настройки - Производительность - Панель производительности

тут мы будет смотреть и проверять настроили ли мы все верно, нажимаем на вкладку Битрикс и обращаем внимание на пункт: Хранение кеша обычно он в режиме Файлы для настройка требуется перейди в директорию bitrix и создать файл .settings_extra.php которого скорее всего нет, и добавляем данный код в файл:

<?php
return array (
	'cache' => array(
		'value' => array (
			'type' => 'memcached',
			'memcached' => array(
				'host' => '127.0.0.1',
				'port' => '11211'
			),
			'sid' => $_SERVER["DOCUMENT_ROOT"]."#01"
		),
	),
);
?>

Важно

  1. Указать memcached не memcache так как это старая версия

  2. В SID если у вас многосайтовость, тогда убираем $_SERVER["DOCUMENT_ROOT"] оставляем только ID сайта, обычно это #s1 или #01 сохраняем файл и смотрим в админке тут: Настройки - Производительность - Панель производительности и видим что Хранение кеша переключился с Файла на cacheenginememcached

  3. Проверить настройки memcached в админке 1С-Битрикс

  4. Чтобы удостовериться в полностью рабочем memcached можете загрузить мой файл скрипт в корень сайта и запустить его, он проверит работоспособность и выдаст такой результат:

    Проверка работы memcached
    На этом все, ваш сайт будет работать достаточно быстрее чем раньше



Обновление от 01 октября 2025

На одном из проектов встал вопрос, отключить админ-панели от Memcached, но оставить Фронт сайта на Memcached и композитный режим, все достаточно просто, идем в тот же файл .settings_extra.php и вносим правки:

<?php
// Определяем тип кеша в зависимости от URL
$isAdmin = false;
if (isset($_SERVER['REQUEST_URI']) && str_contains($_SERVER['REQUEST_URI'], '/bitrix/')) {
	$isAdmin = true;
}

// Конфигурация для админ-панели
$adminCacheConfig = array(
	'type' => 'file',
	'sid' => "#s1"
);

// Конфигурация для фронтенда
$frontendCacheConfig = array(
	'type' => 'memcached',
	'memcached' => array(
		'host' => '127.0.0.1',
		'port' => '11211'
	),
	'sid' => "#s1"
);

return array (
	'cache' => array(
		'value' => $isAdmin ? $adminCacheConfig : $frontendCacheConfig
	),
);
?>

Данный код будет отключать для админ-панели memcached, если зайти по пути: Настройки - Производительность - Панель производительности и видим что Хранение кеша переключился с cacheenginememcached на cacheenginenone, не переживайте, сам сайт все так же работает как работал на cacheenginememcached и загрузка все так же быстрая, вы можете загрузить файл и проверить работоспособность memcached.

Еще способ проверить что memcached все так же работает, заходим: Настройки - Настройки продукта - Композитный сайт - Настройки, внизу выбираем доступный вариант memcached, прописываем Хост: 127.0.0.1 или localhost, порт всегда один: 11211.

Нажимаем "Проверить соединение" видим зеленую надпись, значит все работает


Все статьи

Другие статьи

Смотреть все