Compilar PHP-5.6 con soporte para Apache Worker

Esta es la entrada 2 de 5 en la serie: Compilando PHP desde el código fuente

Un vistazo a PHP-5.6

El módulo Apache Worker implementa un modelo híbrido multihilo-multiproceso permitiendo servir un gran número de peticiones usando menor número de recursos que el módulo Prefork por tanto es una opción factible si su sitio tiene problemas de carga. Otras de las ventajas de usar Apache Worker es que permite crear aplicaciones multihilos haciendo uso de la extensión pthreads

Nota: A pesar de que el equipo de desarrollo de PHP no recomienda usar PHP con los módulos threaded del servidor Apache debido a que algunas extensiones no son “thread safe” y por tanto pueden tener un comportamiento erróneo he probado con éxito 2 aplicaciones usadas a gran escala: WordPress y phpMyAdmin.

Descargar php-5.6.4

wget http://us1.php.net/distributions/php-5.6.4.tar.xz

Descompactar

tar xJvf php-5.6.4.tar.xz

Descargar y ejecutar script para instalar dependencias

$ wget --no-check-certificate https://raw.githubusercontent.com/yoander/sysadmin/master/shscript/php-dev-install-dep.sh && 
        chmod a+x -c php-dev-install-dep.sh && 
        ./php-dev-install-dep.sh apache-worker

Descargar script para compilar php

$ wget --no-check-certificate https://raw.githubusercontent.com/yoander/sysadmin/master/shscript/php-build.sh && 
        chmod a+x -c php-build.sh

Compilar php

$./php-build.sh -at php-5.6.4

donde -a = Soporte para apache, -t = soporte multihilo (thread safe)

Instalar

$ cd php-5.6.4 && sudo make install

Crear fichero de configuración de php

Desarollo

sudo cp -v php.ini-development /etc/php/php.ini

Producción

sudo cp -v php.ini /etc/php/php.ini

Activar OpCache

If usa Xdebug asegúrese que OpCache se carga primero

$ sudo bash -c 'echo "zend_extension=opcache.so" > /etc/php/conf.d/20-opcache.ini'

Reiniciar el Apache

sudo service apache2 restart

Comprobamos

$ firefox http://localhost/info.php



Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *