На примере CentOS. 

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

service memcached restart
ответит на Ваш вопрос. 

Если демона нет, тогда
yum -y install memcached 


Потом надо добавить memcached в автозагрузку
chkconfig memcached on


Теперь надо открыть сокет. Иначе действительно ничего работать не будет. Идем в /etc/sysconfig и находим там файл memcached. Редактируем его. 

Должно быть примерно так: 

 PORT="0" 
USER="memcached" 
MAXCONN="1024" 
CACHESIZE="1024" 
OPTIONS="-a 0766 -s /var/run/memcached/memcached.sock" 

CACHESIZE="1024" - объём оперативной памяти под кеш. 

/var/run/memcached/memcached.sock - это путь, по которому можно будет обращаться к сокету. 

Запускаем демон service memcached start и только после этого идём в dbconn и settings. 

В dbconn.php пишем 

 define("BX_CACHE_TYPE", "memcache"); 
define("BX_CACHE_SID", ["DOCUMENT_ROOT"]."#01"); 
define("BX_MEMCACHE_HOST", "unix:///var/run/memcached/memcached.sock"); 
define("BX_MEMCACHE_PORT", "0"); 

В .settings.php пишем 

 'cache' => 
array ( 
'value' => 
array ( 
'type' => 'memcache', 
array ( 
'port' => 0, 
'host' => 'unix:///var/run/memcached/memcached.sock', 
), 
), 
'readonly' => false, 
), 

Вуаля, все работает.

Автор:  Дмитрий Иванов
Вернуться к блогам

Материалы по теме