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 última semana la semana pasada (más precisamente en Ago. 21, 2015), el equipo de desarrollo de PHP anunció la disponibilidad del último lanzamiento de Php 7 y alentaron a los usuarios y desarrolladores de todo el mundo a probarlo.

Sin embargo, debemos tener en cuenta que, dado que esto es un RC (Liberar candidato) Versión, se espera que tenga errores o incompatibilidades con las configuraciones existentes, por lo que se les pide a los usuarios que los denuncien utilizando el sistema de seguimiento de errores y que no usen Php 7 en producción mientras permanece en esa fase.

Compilar Php 7 en Centos 7 y Debian 8

El lado brillante es que esta versión incluye varias correcciones (es posible que desee consultar esta página en el proyecto Github Repositorio para una lista detallada de las nuevas características 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 PHP 7 RC1 de Source Tarball junto con apache y Mariada en Centos 7 y Debian 8 Jessie. Las mismas instrucciones también funcionan Cento distribuciones basadas como Rhel, Fedora, Linux científico y Debian basado como Ubuntu/menta.

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

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

Antes de hacer eso, sin embargo, debemos recordar eso para aprovechar mejor Php 7 Y quizás la mejor manera de probarlo es instalarlo junto con apache y Mariada - que podemos encontrar en los repositorios:

En Centos 7

# Yum Update && Yum install httpd mariadb mariadb-server 

En Debian 8

# Aptitude Update && aptitud.común 

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

# wget https: // descargas.php.net/~ AB/PHP-7.0.0RC1.alquitrán.GZ # TAR XZF PHP-7.0.0RC1.alquitrán.GZ -C /OPT 

Una vez hecho, pasemos a /OPT/PHP-7.0.0RC1 y ejecutar el buildConf guión con el -fuerza Cambiar para forzar la construcción de una versión RC:

# ls 
PHP 7 BuildConf
# CD /OPT /PHP-7.0.0RC1.alquitrán.GZ # ./buildconf --force 
Construir php 7

Ahora es el momento de ejecutar nuestro conocido configurar dominio. Mientras que las opciones a continuación asegurarán un estándar Php 7 Instalación, puede consultar la lista de opciones completa en el manual de PHP para personalizar mejor la instalación según sus necesidades:

# ./Configurar \--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 \-- -With-curl \-with-mCrypt \-with-iconv \-with-gmp \-with-pspell \-with-gd \-with-jpeg-diir =/usr \ --with- png-diir =/usr \-with-zib-diir =/usr \-with-xpm-diir =/usr \-with-freetype-diir =/usr \ --enable-gd-native-ttf \ --enable-gd-jis-confon \-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 te encuentras con el siguiente error:

Configurar: Error: no se encontró un compilador C aceptable en $ ruta ver 'config.Registro 'para más detalles 
PHP 7 Configurar

Simplemente instalar GCC y dependencias con el siguiente comando y ejecutar lo anterior configurar comandar nuevamente.

# yum instalar GCC [ON Centos 7 box] # aptitudes instalar gcc [en Debian 8 caja] 

Te dirigirás a la compilación Php 7, que puede llevar un tiempo. Si hay otras bibliotecas o recursos faltantes, este proceso fallará, pero siempre puede instalarlos y ejecutar Configurar nuevamente.

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

Configurar: Error: XML2-Config no encontrado. Consulte su 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 con los 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 que tuve que instalar en mi Centos 7 Box antes de poder completar el proceso de configuración:

gcc libxml2-devel pkgconfig openSsl-devel bzip2-devel curl-devel libpng-delvel libpng-devel libjpeg-devel libxpm-devel freetype-devel gmp-devel librypt-dEvel-devel-devel-devel recode-dedede-devel helvel-devel librypt-devel-mariadb-devel-devel recode-dedede-dedede-devel helvel-devel librypt-devel mariAdb-devel-devel recode-dedede-de-de-dEvel 

Puede instalar todos los paquetes requeridos anteriormente con un solo beque comando 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 Configurar terminado correctamente:

PHP 7 Configuración exitosa

Entonces corre,

# hacer # hacer instalar 

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

Verifique la versión de PHP

En Debian 8

En Debian, Tuve que instalar los siguientes paquetes para el proceso de configuración para completar con éxito:

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- enchufe 

Puede instalar todos los paquetes requeridos anteriormente con apt-get mandar Debian 8.

# apt-get install haz libxml2-dev libcUrl4-openssl-devel libjpeg-dev-libpng-dev libxpm-develqlysqlclient-libicu-develiBfreetype6 -dev libsslt-develssl-develbZ2 -dev libgmp-dev-dev libmcrypt-dev libmcry-dev libppsppsppsppsppsppsppsppsppsppsppsppsppsppsppsppsppsppsppsppsppsppsppsppsppsppsppsppsppsppsppsppsppspspspspspspspspspspssl Librecode-Dev Apache2-Dev 

Luego añade, -con-libdir =/lib/x86_64-linux-gnu a las opciones de configuración y cree el siguiente enlace de simulación al GMP.H archivo de cabecera:

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

Entonces corrió hacer y hacer instalar Como en el caso anterior. Dentro 10-15 Actas de la compilación deberían haberse completado y podemos verificar la versión PHP instalada como antes:

# hacer # hacer instalar 
Verifique la versión PHP en Debian 8

Configuración de PHP.Instalación de INI y Probar PHP 7

Cuando instala PHP desde la fuente, dos muestras php.ini están provistos. En este caso, se encuentran dentro /OPT/PHP-7.0.0RC1:

# ls -l /opt /php -7.0.0rc1 | Grep PHP.ini 
PHP 7 Configuración PHP.archivo ini

Ahora necesitas copiar uno de ellos para /usr/local/lib, que se designa como la ubicación predeterminada para dicho archivo según las notas de instalación:

# CP /OPT /PHP-7.0.0RC1/PHP.ini-desarrollo/usr/local/lib/lib 

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

/etc/httpd/conf/httpd.confirmar Centos 7 caja]/etc/apache2/apache2.conf en [ Debian 8 caja] 
Loadmodule php7_module/usr/lib64/httpd/modules/libphp7.SO SETHANDLER APLICACIÓN/X-HTTPD-PHP  

En Debian 8 puedes omitir el Módulo de carga Línea y también necesita eliminar y crear los siguientes enlaces simbólicos a los módulos Apache indicados:

# cd/etc/apache2 # rm mods-habilitado/mpm_event.conf # rm mods-habilitado/mpm_event.Cargar # ln -s mods disponible/mpm_prefork.conf mpm_prefork.conf # ln -s mods disponible/mpm_prefork.Cargar mpm_prefork.carga 

Luego, reinicie el servidor web:

# SystemCTL reiniciar httpd [ON Centos 7 Box] # SystemCTL reiniciar Apache2 [ON Debian 8 caja] 

Si comienza apache en Centos 7 Devuelve un mensaje de error que dice que no puede encontrar el libphp7.entonces módulo, simplemente copie a la ruta indicada desde /OPT/PHP-7.0.0RC1/.libs/libphp7.entonces.

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

 

Y lanzar un navegador en un cliente dentro de su red para probar:

http: // localhost/test.php o http: // ip-address/test.php 
Verifique la información de Php 7 en Centos 7 Verifique la información de Php 7 en Debian 8

Resumen

En este artículo, hemos explicado cómo instalar PHP 7 del código fuente, el RC más nuevo de este popular lenguaje de secuencias de comandos del lado del servidor que tiene como objetivo mejorar el rendimiento a valores sin precedentes. Hasta que llegue al establo en Noviembre de este año 2015, eres FUERTEMENTE aconsejado NO Use este lanzamiento en un entorno de producción.

Si tiene alguna pregunta / comentario / sugerencia sobre este artículo, no dude en informarnos con el formulario a continuación.