Cómo instalar PHP 7 con Apache y MariaDB en CentOS 7/Debian 8

Cómo instalar PHP 7 con Apache y MariaDB en CentOS 7/Debian 8

La semana pasada (más precisamente el 21 de agosto de 2015. , el equipo de desarrollo de PHP anunció la disponibilidad de la última versión de PHP 7. y animó a los usuarios y desarrolladores en todo el mundo para probarlo.

Sin embargo, debemos tener en cuenta que, dado que se trata de una versión RC. ( Release Candidate. , se espera que tenga errores o incompatibilidades con las configuraciones existentes, por lo que se les pide a los usuarios que los informen utilizando el sistema de seguimiento de errores y que no utilicen PHP 7. en producción mientras permanezca en esa fase.

 Instalar PHP 7 en CentOS 7 y Debian 8  Instala PHP 7 en CentOS 7 y Debian 8 Compilar PHP 7 en CentOS 7 y Debian 8

El lado positivo es que esta versión incluye varias correcciones (es posible que desee consultar esta página en el repositorio GitHub. del proyecto para obtener una lista detallada de las nuevas funciones y mejoras), siendo la característica más distintiva un aumento de rendimiento notable en comparación con las versiones anteriores.

Este artículo lo guiará a través del proceso de instalación y compilación de PHP 7 RC1. desde el código fuente junto con Apache. y MariaDB. en CentOS 7. y Debian 8 Jessie. Las mismas instrucciones también funcionan en distribuciones basadas en CentOS. como RHEL. Fedora. Scientific Linux. y Debian. basado en Ubuntu. Mint.

Instalación de PHP 7 en CentOS 7 y Debian 8

Como se indicó en la introducción, dado que esta versión es una RC. en lugar de una versión estable, no podemos esperar razonablemente encontrarla en los repositorios. Por esa razón, tendremos que descargar el código fuente y compilar el programa desde cero.

freestar.config.enabled_slots.push

Antes hacemos eso, sin embargo, debemos recordar que para aprovechar mejor PHP 7. y quizás la mejor manera de probarlo es instalarlo junto con Apache. y MariaDB. que PODEMOS encontrar en los repositorios:

En CentOS 7 # yum update && yum install httpd mariadb mariadb-server En Debian 8 # aptitude update && aptitude install apache2 mariadb-server mariadb-client mariadb.common

En cualquier caso, el tarball con el código fuente de PHP. se puede descargar y extraer de la siguiente manera:

# wget https://downloads.php.net/~ ab/php-7.0.0RC1.tar.gz # tar xzf php-7.0.0RC1.tar.gz-C/opt

Una vez hecho esto, pasemos a /opt/php-7.0.0RC1 y ejecute el script buildconf. wi el interruptor –force. para forzar la compilación de una versión RC:

# ls  PHP 7 buildconf  PHP 7 buildconf PHP 7 buildconf # cd/opt/php-7.0.0RC1.tar.gz # ./buildconf–force  Build PHP 7  Compilar PHP 7 Construir PHP 7

Ahora es el momento de ejecutar o Nuestro conocido comando configure. Si bien las siguientes opciones garantizarán una instalación estándar de PHP 7. puede consultar la lista completa de opciones en el manual de PHP para personalizar mejor la instalación según sus necesidades:

# ./configure \–prefix = $ HOME/php7/usr \–with-config-file-path = $ HOME/php7/usr/etc \–enable-mbstring \–enable-zip \–enable-bcmath \–enable-pcntl \–enable-ftp \–enable-exif \–enable-calendar \–enable-sysvmsg \–enable-sysvsem \–enable-sysvshm \–enable-wddx \-con-curl \–with-mcrypt \–with-iconv \–with-gmp \–with-pspell \–with-gd \–with-jpeg-dir =/usr \–with-png-dir =/usr \–with-zlib-dir =/usr \–with-xpm-dir =/usr \–with-freetype-dir =/usr \–enable-gd-native-ttf \–enable-gd-jis-conv \–with-openssl \–with-pdo-mysql =/usr \–with-gettext =/usr \–with-zlib =/usr \–with-bz2 =/usr \–with-recode =/usr \–with-mysqli =/usr/bin/mysql_config \–with-apxs2

Si se encuentra con el siguiente error:

con figura: error: no se encontró un compilador de C aceptable en $ PATH, consulte ‘config.log’ para obtener más detalles  PHP 7 Configurar  PHP 7 Configure PHP 7 Configure

Simplemente instale gcc. y las dependencias con el siguiente comando y vuelva a ejecutar el comando configure. anterior.

# yum install gcc [en la caja CentOS 7. # aptitude install gcc [En el cuadro Debian 8.

Estará en camino de compilar PHP 7. lo que puede llevar un tiempo. Si faltan otras bibliotecas o recursos, este proceso fallará, pero siempre puede instalarlos y ejecutar configure nuevamente.

Por ejemplo, tuve que instalar libxml2-devel. después de recibir el siguiente mensaje de error:

configure: error: xml2-config no encontrado. Compruebe la instalación de libxml2.

Desafortunadamente, no podemos cubrir todos los escenarios de casos, ya que el software instalado puede variar de un sistema a otro. Durante la instalación, es posible que desee consultar esta página que describe varios errores que puede encontrar al instalar PHP desde la fuente, junto con sus respectivas soluciones.

En CentOS 7

Aquí hay una lista completa de los paquetes Tuve que instalar en mi caja CentOS 7. antes de poder completar el proceso de configuración:

gcc libxml2-devel pkgconfig openssl-devel bzip2-devel curl-devel libpng-devel libpng-devel libjpeg-devel libXpm-devel freetype-devel gmp-devel libmcrypt-devel mariadb-devel aspell-devel recode-devel httpd-devel

Puede instalar todos los paquetes requeridos anteriormente con un solo comando yum. como se muestra.

# yum install gcc libxml2-devel pkgconfig openssl-devel bzip2-devel libpng-devel libpng-devel libjpeg-devel libXpm-devel freetype-devel gmp-devel libmcrypt-devel mariadb-devel aspell-devel recode-devel httpd-devel

El siguiente mensaje indica que la configuración finalizó correctamente:

 Configuración correcta de PHP 7  Configuración correcta de PHP 7 PHP 7 Configuration Successful

Luego ejecute,

# fabricar # make install

Cuando la instalación esté completa, puede verificar la versión usando la línea de comando:

Verificar versión de PHP  Verificar la versión de PHP Verificar la versión de PHP En Debian 8

En Debian. tuve que instalar los siguientes paquetes para que el proceso de configuración se completara correctamente:

make libxml2-dev libcurl4-openssl-dev libjpeg-dev libpng-dev libxpm-dev libmysqlclient-dev libicu-dev libfreetype6-dev libxslt-dev libssl-dev libbz2-dev libgmp-dev libmcrypt-dev libpspell-dev librecode-dev apache2-dev

Puede instalar todos los p paquetes con el comando apt-get. en Debian 8.

# apt-get install make libxml2-dev libcurl4-openssl-dev libjpeg-dev libpng-dev libxpm-dev libmysqlclient-dev libicu-dev libfreetype6-dev libxslt-dev libssl-dev libbz2-dev libgmp-dev libmcrypt-dev libpspell-dev librecode-dev apache2-dev

Luego agregue, –with-libdir =/lib/x86_64-linux-gnu. a las opciones de configuración y cree el siguiente enlace simbólico al archivo de encabezado gmp.h.

# ln-s/usr/include/x86_64-linux-gnu/gmp.h/usr/include/gmp.h

Luego ejecutó make. y make install. como en el caso anterior. En 10-15. minutos, la compilación debería haberse completado y podemos verificar la versión de PHP instalada como antes:

# make # make install  Verificar la versión de PHP en Debian Verificar la versión de PHP en Debian Verificar la versión de PHP en Debian 8

Configurar php.ini y probar la instalación de PHP 7

Cuando instala PHP desde la fuente, se proporcionan dos php.ini. de muestra. En este caso, se encuentran dentro de /opt/php-7.0.0RC1.

# ls-l/opt/php-7.0.0RC1 | grep php.ini  Configuración de PHP 7 Archivo php.ini  Configuración PHP 7 Archivo php.ini Configuración PHP 7 Archivo php.ini

Ahora necesita copiar uno de ellos a /usr/local/lib. que está designado como la ubicación predeterminada para dicho archivo según las notas de instalación:

# cp/opt/php-7.0.0RC1/php.ini-development/usr/local/lib

Y no olvide agregar esta directiva de configuración a los archivos de configuración principales de Apache.

/etc/httpd/conf/httpd .conf [En el cuadro CentOS 7. /etc/apache2/apache2.conf en [En el cuadro Debian 8. LoadModule php7_module/usr/lib64/httpd/modules/libphp7.so Aplicación SetHandler/x-httpd-php

En Debian 8. puede omitir el LoadModule. y también debe eliminar y crear los siguientes enlaces simbólicos a los módulos de Apache indicados:

# cd/etc/apache2 # rm mods-enabled/mpm_event.conf # rm mods-enabled/mpm_event.load # ln-s mods-available/mpm_prefork.conf mpm_prefork.conf # ln-s mods-available/mpm_prefork.load mpm_prefork.load

Luego, reinicie el servidor web:

# systemctl restart httpd [En el cuadro CentOS 7. # systemctl restart apache2 [En Debian 8. box]

Si al iniciar Apache. en CentOS 7. aparece un mensaje de error que dice que no puede encontrar el módulo libphp7.so. simplemente copie a la ruta indicada desde /opt/php-7.0.0RC1/.libs/libphp7.so.

La forma clásica de probar una instalación PHP/Apache es usando un archivo phpinfo (). Cree un archivo llamado test.php. con el siguiente contenido en la raíz del documento del servidor web (/var/www/html. en ambas distribuciones):

E inicie un navegador en un cliente dentro de su red para probar:

http://localhost/test.php O http://IP-address/test.php  Verifica la información de PHP 7 en CentOS 7 Verificar la información de PHP 7 en CentOS 7 Verificar la información de PHP 7 en CentOS 7  Verifica la información de PHP 7 en Debian 8  Verifica la información de PHP 7 en Debian 8 Verificar la información de PHP 7 en Debian 8

Resumen

En este artículo hemos explicado cómo instalar PHP 7 desde el código fuente, el RC más nuevo de este popular lenguaje de scripting del lado del servidor que tiene como objetivo mejorar el rendimiento a valores sin precedentes. Hasta que alcance el nivel estable en noviembre. de este año 2015. FUERTEMENTE. aconsejado NO. utilice esta versión en un entorno de producción.

Si tiene alguna pregunta/comentario/sugerencia sobre este artículo, no dude en hacérnoslo saber mediante el formulario a continuación.