Una vez instalado Xcache en el sistema, se deben agregar sus directivas a la configuración a php (php.ini) para posteriormente reiniciar el servidor php y que Xcache entre en juego. Para tener monitorizado y controlado Xcache, se puede activar y configurar la página de administración de Xcache (Xcache Administration Page) bajo el servidor web. Desde la página de administración se puede vaciar la cache, ver su funcionamiento, configuración, scripts PHP cacheados, etc.
# Si se usa PHP por medio de php-fpm. cat /etc/php5/conf.d/20-xcache.ini >> /etc/php5/fpm/php.ini # Si se usa PHP por medio de fast-cgi. cat /etc/php5/conf.d/20-xcache.ini >> /etc/php5/cgi/php.ini # Si se usa PHP por medio de de la linea de comando PHP-CLI. cat /etc/php5/conf.d/20-xcache.ini >> /etc/php5/cli/php.ini
Documentación de Xcache.
Crear una password en md5 para Xcache (xcache.admin.pass).
echo -n PASSWORDDEMODA | md5sum ac63198426f5c043e1710707ba0fde19
Fichero php.ini.
xcache.admin.pass = "ac63198426f5c043e1710707ba0fde19"
Se copian los directorios del panel de Xcache al dominio que se considere oportuno, para el ejemplo se crea el directorio xcache.
mkdir /usr/share/nginx/www/xcache/ cp -r /usr/share/xcache/ /usr/share/nginx/www/xcache/ # Asignar el propietario de Nginx (www-data, nobody, nginx,...). chown -R www-data:www-data /usr/share/nginx/www/xcache/ # En el caso de utilizar php-fpm. service service php5-fpm restart
Configuración de Nginx para el nuevo subdominio. (xcache.dominio.com)
NOTA: Previamente se ha debido configurar el subdominio “xcache.dominio.com” en el panel del DNS.
Ejemplo de configuración para “Administration Page” en Nginx como host virtual.
Creamos el fichero /etc/nginx/sites-enabled/xcache
server { server_name xcache.dominio.com; ############################ listen 80; autoindex off; client_max_body_size 15M; client_body_buffer_size 128k; index index.html index.htm index.php doku.php; access_log /var/log/nginx/xcache/access.log; error_log /var/log/nginx/xcache/error.log; root /usr/share/nginx/www/dominio/xcache/admin; error_page 500 502 503 504 404 403 /404.html; include /etc/nginx/block.conf; location / { root /usr/share/nginx/www/dominio/xcache/admin; allow all; } location ~ \.php$ { try_files $uri =404; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; include /etc/nginx/fastcgi_params; fastcgi_param QUERY_STRING $query_string; fastcgi_param REQUEST_METHOD $request_method; fastcgi_param CONTENT_TYPE $content_type; fastcgi_param CONTENT_LENGTH $content_length; fastcgi_intercept_errors on; fastcgi_ignore_client_abort off; fastcgi_connect_timeout 60; fastcgi_send_timeout 180; fastcgi_read_timeout 180; fastcgi_buffer_size 128k; fastcgi_buffers 4 256k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; fastcgi_param PATH_INFO $uri; fastcgi_param HTTPS $php_https;#DW checks $_SERVER['HTTPS'] fastcgi_param HTTPS on; } }