hosting:cms:dle:memcached

2.13.7.2. Настройка Memcache в DLE

DLE умеет работать с Memcache, но в её скриптах есть изъян, не позволяющий указать адрес Memcache в виде unix-сокета.

Чтобы включить поддержку Memcache в DLE:

  1. Откройте файл engine/modules/functions.php и найдите в нём такой блок кода:
    $mcache = false;
    if ($config['cache_type']) {
        if (function_exists('memcache_connect')) {
            $memcache_server = explode(":", $config['memcache_server']);
            $mcache = @memcache_connect($memcache_server[0], $memcache_server[1]);
            if ($mcache AND function_exists('memcache_set_compress_threshold')) {
                memcache_set_compress_threshold($mcache, 20000, 0.2);
            }
        }
    }

  2. Замените найденный блок кода на этот:

    $mcache = false;
    if ($config['cache_type']) {
        if (function_exists('memcache_connect')) {
            $memcache_server = explode(":", $config['memcache_server']);
            if ($memcache_server[0] == 'unix') {
                $memcache_server = array($config['memcache_server'], 0);
            }
            $mcache = @memcache_connect($memcache_server[0], $memcache_server[1]);
            if ($mcache AND function_exists('memcache_set_compress_threshold')) {
                memcache_set_compress_threshold($mcache, 20000, 0.2);
            }
        }
    }

  3. Откройте админ-панель сайта.
  4. Перейдите в раздел «Настройка системы → Оптимизация».
  5. В поле «Данные для подключения к Memcache-серверу» укажите unix:///home/example/.system/memcache/socket, подставив вместо example название хостинг-аккаунта, в котором размещён сайт.
  6. Сохраните изменения.
  7. Проверьте работу сайта.

  • hosting/cms/dle/memcached.txt
  • Последние изменения: 2019/08/29 12:14
  • — karlov