por Antonio Romero.
Trabajo con la versión 2.5.2 de moodle, y cuando a través de "Administración del sitio / Servidor / Entorno" trato de averiguar si mi servidor estaría capacitado para instalar las versiones 2.6 o 2.7 me aparecía como a revisar: php_setting >> opcache.enable. Ante mi desconocimiento de ese aviso hago clic sobre el enlace activo y manda a esta información. Como se puede leer, dice que esta opción de php va incluida por defecto en las versiones de PHP 5.5 y añade NOTA: Si Usted está corriendo PHP 5.3 o 5.4 usted puede ignorar con seguridad el mensaje de revisión del Entorno sobre OpCache.
Pero si ojean este foro y su versión inglesa, a más de uno le trae de cabeza la instalación de Moodle 2.6 por el dichoso requerimiento. Así que teniendo en mi servidor PHP 5.4 contacto con los proveedores de servicio que en mi caso son DreamHost (proveedor principal) y Seogeno (proveedor local). Pues asombrosamente Dreamhost me dice que no proporciona servicios sobre PHP y me redirige a una wiki, y la excusa de Seogeno es aún más increible: "sentimos comunicarle que estos requerimientos técnicos exceden nuestro conocimiento". Pues bien, con la ayuda de internet y muchas horas de curro, explico cómo he conseguido activar "opcache" en mi servidor de internet con PHP 5.4 :- En el panel de control de Dreamhost accedemos como usuario registrado en "Main Menu / Users / Manage users" , ahí aparecerá nuestro nombre de usuario, hacemos clic en "Edit". Dentro de User Type debemos tener activada la opción: Shell user - allows login via SSH (secure shell) for command-line access, as well as SFTP. Guardamos y salimos del panel de control.
- Debemos tener un programa cliente SSH. En mi caso que trabajo con windows he descargado: WinSCP (is an open source free SFTP client for Windows using SSH). Con este programa, una vez instalado, accedo al servidor (con los mismos datos que uso por FTP). En la barra de herramientas hago clic en el icono que indica "Abrir terminal" y en la consola negra donde indica "Ingrese comando" voy introduciendo una a una estas instrucciones, y tras cada una hago clic en ejecutar:
tar xvf zendopcache-7.0.3.tgz
cd zendopcache-7.0.3
/usr/local/php54/bin/phpize
./configure --with-php-config=/usr/local/php54/bin/php-config; make
Tras esto podemos eliminar el archivo comprimido "zenopcache-7.0.3.tgz", y localizamos el archivo "opcache.so" dentro del directorio creado "zendopcache-7.0.3 / modules" y lo copiamos en el directorio que queramos. Yo lo copié en: /home/mi_web/.php/5.4/Finalmente personalizamos en archivo "phprc" que en mi caso se encuentra en: /home/mi_web/.php/5.4/. En mi caso la estructura de este archivo es la siguiente:; {{{ The following lines were automatically added by DreamHost extension=xcache.so ; }}} That's all from DreamHost
php_flag display_errors 0
max_execution_time = 7200
max_file_uploads = 100
max_input_time = 7200
max_input_vars = 4096
memory_limit = 256M
output_buffering = 4096
post_max_size = 256M
upload_max_filesize = 256M;
extension = intl.so
zend_extension = /home/mi_web/.php/5.4/opcache.so
display_errors = Off
display_startup_errors = off
opcache.enable = 1
opcache.memory_consumption = 256
opcache.max_accelerated_files = 4000
opcache.revalidate_freq = 60
opcache.use_cwd = 1
opcache.validate_timestamps = 1
opcache.save_comments = 1
opcache.enable_file_override = 0
Y tras esperar unos minutos y volver a comprobar en varias ocasiones "Administración del sitio / Servidor / Entorno/ 2.6" logré activar opcache en PHP 5.4