Conexión a Memcached en el alojamiento web
Cómo configurar el acceso a Memcached en los CMS más populares en el alojamiento web.
En el alojamiento web, Memcached es accesible a través de un socket Unix. Se admiten las dos extensiones PHP memcache y memcached. Por defecto, cada usuario dispone de 32 MB de memoria — para aumentar el límite, envía una solicitud a través del sistema de tickets.
La ruta del socket depende de la extensión PHP que estés usando.
Para la extensión php-memcache:
Ruta del socket: unix:///user_home_directory/.memcached/memcached.sock
Puerto: 0
Para la extensión php-memcached:
Ruta del socket: user_home_directory/.memcached/memcached.sock
Puerto: 0
La ruta del directorio personal se muestra en la página de inicio de cPanel, bajo Información general.
Información general en cPanel
Joomla 5
Joomla incluye soporte nativo para Memcached — no se necesitan plugins adicionales.
Inicia sesión en el panel de administración y ve a Sistema → Configuración global → Sistema. En los ajustes de caché, configura las siguientes opciones:
Cache Handler—MemcachedMemcache(d) Server Host—user_home_directory/.memcached/memcached.sockMemcache(d) Server Port—11211
Ajustes de caché en Joomla
Haz clic en Guardar.
WordPress
WordPress no admite Memcached de forma nativa, pero puede añadirse mediante el plugin W3 Total Cache.
En los ajustes del plugin, ve a la pestaña General Settings y establece Page Cache Method en Memcached.
W3 Total Cache — General Settings
A continuación, ve a Page Cache → Advanced y establece Memcached hostname:port / IP:port en:
user_home_directory/.memcached/memcached.sock:0
W3 Total Cache — Page Cache
OpenCart
OpenCart incluye soporte nativo para Memcached.
OpenCart 3.0 — añade lo siguiente al final de config.php y admin/config.php:
define('CACHE_HOSTNAME', '/home/YOUR_ACCOUNT/.system/memcache/socket');
define('CACHE_PORT', '0');
define('CACHE_PREFIX', 'oc_');
OpenCart 2.2–2.3 — añade lo siguiente en ambos archivos de configuración:
define('CACHE_HOSTNAME', 'unix:///home/YOUR_ACCOUNT/.system/memcache/socket');
define('CACHE_PORT', '0');
define('CACHE_PREFIX', 'oc_');
En system/config/default.php, reemplaza:
$_['cache_type'] = 'file';
por:
$_['cache_type'] = 'mem';
Nuestros servicios y productos
Bitrix
Bitrix admite Memcached a través de la extensión php-memcache, disponible únicamente para PHP 5.3–5.6.
Añade lo siguiente en bitrix/php_interface/dbconn.php:
define("BX_CACHE_TYPE", "memcache");
define("BX_CACHE_SID", $_SERVER["DOCUMENT_ROOT"]."#01");
define("BX_MEMCACHE_HOST", "unix:///user_home_directory/.memcached/memcached.sock");
define("BX_MEMCACHE_PORT", "0");
Añade lo siguiente en bitrix/.settings_extra.php:
<?php
return array(
'cache' => array(
'value' => array(
'type' => 'memcache',
'memcache' => array(
'host' => 'unix:///user_home_directory/.memcached/memcached.sock',
'port' => '0',
),
'sid' => $_SERVER["DOCUMENT_ROOT"]."#01"
),
),
);
Si el archivo
bitrix/.settings_extra.phpno existe, créalo manualmente.
DLE
DLE incluye soporte nativo para Memcached.
En el panel de administración, ve a Configuración del sistema → Optimización. Establece Tipo de caché del sitio en Memcache e introduce lo siguiente en Datos de conexión al servidor Memcache:
user_home_directory/.memcached/memcached.sock
Drupal
Drupal no admite Memcached de forma nativa — instala primero el módulo Memcache y actívalo en Extensiones.
Drupal 7 — añade lo siguiente al final de /sites/default/settings.php (reemplaza your_login con el nombre de tu cuenta):
$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';
$conf['cache_class_cache_form'] = 'DrupalDatabaseCache';
$conf['page_cache_without_database'] = TRUE;
$conf['page_cache_invoke_hooks'] = FALSE;
$conf['memcache_servers'] = array('unix:///home/your_login/.memcached/memcached.sock' => 'default');
Drupal 8+ — añade lo siguiente en settings.php:
$settings['memcache']['servers'] = ['unix:///home/your_login/.memcached/memcached.sock' => 'default'];
$settings['memcache']['bins'] = ['default' => 'default'];
$settings['memcache']['key_prefix'] = '';
$settings['cache']['default'] = 'cache.backend.memcache';
Ayuda
¿Tienes dudas o necesitas ayuda? Escríbenos a través del sistema de tickets — siempre estamos aquí para ayudarte!