Подключение к memcached на виртуальном хостинге

Инструкция по настройке доступа к memcached в популярных CMS на виртуальном хостинге.

На виртуальном хостинге доступ к Memcached осуществляется через сокет, поддерживаются расширения PHP memcache и memcached. По умолчанию каждому пользователю выделяется 32 MB памяти. При необходимости лимит можно увеличить, обратившись в тикет-систему.

В зависимости от используемого расширения PHP путь к сокету указывается по-разному:

Для расширения php-memcache:

Путь к сокету: unix:///корневой_каталог_пользователя/.memcached/memcached.sock
Порт подключения: 0

Для расширения php-memcached:

Путь к сокету: корневой_каталог_пользователя/.memcached/memcached.sock
Порт подключения: 0

Корректный корневой каталог пользователя можно посмотреть на главной странице cPanel в разделе Основная информация.

file


Подключение Memcached в Joomla 5

Так как CMS изначально поддерживает работу с Memcached, установка дополнительных плагинов не требуется.

Авторизуйтесь в админ-панели Joomla и перейдите в раздел СистемаОбщие настройкиСистема. В настройках кеширования и сессий укажите:

  • Cache Handler — Memcached
  • Memcache(d) Server Host — корневой_каталог_пользователя/.memcached/memcached.sock
  • Memcache(d) Server Port — 11211

file

Для применения настроек нажмите Сохранить.


Подключение Memcached в WordPress

WordPress не имеет встроенной поддержки Memcached, но можно использовать плагины. Один из самых популярных — W3 Total Cache.

Перейдите в настройки плагина во вкладку General Settings. В поле Page Cache Method выберите Memcached.

file

Затем для каждого типа кеширования необходимо указать параметры доступа. Перейдите во вкладку Page CacheAdvanced и в поле Memcached hostname:port / IP:port укажите:

корневой_каталог_пользователя/.memcached/memcached.sock:0

file


Подключение Memcached в OpenCart

В OpenCart поддержка Memcached встроена. Для включения кеша используйте следующие настройки:

OpenCart 3.0 В конец файлов config.php и admin/config.php добавьте:

define('CACHE_HOSTNAME', '/home/ВАШ_АККАУНТ/.system/memcache/socket');
define('CACHE_PORT', '0');
define('CACHE_PREFIX', 'oc_');

OpenCart 2.2–2.3 Добавьте в оба конфигурационных файла:

define('CACHE_HOSTNAME', 'unix:///home/ВАШ_АККАУНТ/.system/memcache/socket');
define('CACHE_PORT', '0');
define('CACHE_PREFIX', 'oc_');

В файле system/config/default.php замените:

$_['cache_type'] = 'file';

на:

$_['cache_type'] = 'mem';

Подключение Memcached в Bitrix

Bitrix поддерживает работу с Memcached через расширение php-memcache, доступное только в версиях PHP 5.3–5.6.

Для настройки доступа добавьте в файл bitrix/php_interface/dbconn.php строки:

define("BX_CACHE_TYPE", "memcache");
define("BX_CACHE_SID", $_SERVER["DOCUMENT_ROOT"]."#01");
define("BX_MEMCACHE_HOST", "unix:///корневой_каталог_пользователя/.memcached/memcached.sock");
define("BX_MEMCACHE_PORT", "0");

Также в файл bitrix/.settings_extra.php внесите:

<?php
return array(
'cache' => array(
'value' => array(
'type' => 'memcache',
'memcache' => array(
'host' => 'unix:///корневой_каталог_пользователя/.memcached/memcached.sock',
'port' => '0',
),
'sid' => $_SERVER["DOCUMENT_ROOT"]."#01"
),
),
);

Примечание

Если файла bitrix/.settings_extra.php нет, создайте его вручную.


Подключение Memcached в DLE

В DLE поддержка Memcached встроена. Чтобы её включить: Перейдите в админ-панель сайта → Настройка системыОптимизация. В поле Тип кеширования на сайте выберите Memcache, а в параметре Данные для подключения к Memcache серверу укажите:

корневой_каталог_пользователя/.memcached/memcached.sock

Подключение Memcached в Drupal

Drupal 7

Drupal не имеет встроенных инструментов для работы с Memcached, поэтому сначала нужно установить модуль Memcache.

После установки активируйте его в разделе «Расширения» и добавьте в конец файла /sites/default/settings.php (замените "ваш_логин" на имя аккаунта):

$conf['cache_backends'][] = 'sites/all/modules/memcache/memcache.inc';
$conf['lock_inc'] = 'sites/all/modules/memcache/memcache-lock.inc';
$conf['memcache_stampede_protection'] = TRUE;
$conf['cache_default_class'] = 'MemCacheDrupal';
// The 'cache_form' bin must be assigned to non-volatile storage.
$conf['cache_class_cache_form'] = 'DrupalDatabaseCache';
// Don't bootstrap the database when serving pages from the cache.
$conf['page_cache_without_database'] = TRUE;
$conf['page_cache_invoke_hooks'] = FALSE;
$conf['memcache_servers'] = array('unix:///home/ваш_логин/.memcached/memcached.sock' => 'default');

Drupal 8+

// Memcache configuration
$settings['memcache']['servers'] = ['unix:///home/ваш_логин/.memcached/memcached.sock' => 'default'];
$settings['memcache']['bins'] = ['default' => 'default'];
$settings['memcache']['key_prefix'] = '';
$settings['cache']['default'] = 'cache.backend.memcache';

Помощь

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

Нужна помощь?Наши инженеры бесплатно помогут с любым вопросом за считанные минутыНаписать нам