Pandora: Documentation es: Instalación y actualización PHP 7

From Pandora FMS Wiki
Jump to: navigation, search

1 Prerrequisitos

La instalación de PHP7 se debe realizar con los rpm/deb/OUM ... de la consola en la versión 729 o posterior instalados. En caso contrario, Pandora FMS nos dará un conflicto de dependencias debido a que para versiones anteriores nos pide PHP5.

Info.png

En caso de instalar de la 728 a la 729, si tenemos el repositorio de PHP7 configurado en nuestro sistema, nos intentará instalar automáticamente dicho repositorio al actualizar la consola

 



Info.png

Se soportan versiones de php 7.2 o superior, siendo necesario instalar todas las dependencias requeridas

 


2 Instalación y actualización de PHP 7

2.1 Instalación de PHP 7

2.1.1 CentOS

En primer lugar, veremos que no existe ninguna versión anterior de php instalada en la máquina mediante el comando de:

php –v


VersionLinuxNada.png



Una vez comprobado que hemos desinstalado correctamente php, nos bajaremos los repositorios de epel y remi con las últimas versiones a instalar:

# yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
# yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm

Para versiones de CentOS 6, se tendría que realizar de la siguiente manera:

# yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm 
# yum install http://rpms.famillecollet.com/enterprise/remi-release-6.rpm


Epel.png





Remi.png



A continuación, instalaremos yum-utils en el caso de que no lo tengamos instalado previamente en nuestra máquina para poder utilizar el comando yum-config-manager:

yum install yum-utils
yum-config-manager --enable remi-php72


Yum manager.png



Para finalizar, instalaremos la versión php7.2 en nuestro sistema:

yum install php php-mcrypt php-cli php-gd php-curl php-mysql php-ldap php-zip php-fileinfo php-snmp php-mbstring php-pecl-zip php-xmlrpc libxslt php-xml


Yum Install php.png



Y comprobamos finalmente la versión instalada.



Version 7 php.png



2.1.2 Windows

En primer lugar, debemos desplazarnos a la siguiente página web: https://windows.php.net/download/ para descargarnos la versión de PHP 7.2 que necesitemos; en nuestro caso bajaremos la versión VC15 x64 Thread Safe.



DescargaPhp7.jpg



Una vez tengamos descargado el zip, lo descomprimiremos en la carpeta C:\php.

Una vez creada la carpeta, copiaremos el fichero php.ini-production y lo renombraremos a php.ini.

Para finalizar, se deberá cambiar el fichero de httpd-php.conf y cambiar el LoadFile Y LoadModule a lo siguiente:



Httpd-php.png



2.2 Actualización de PHP 7

2.2.1 CentOS

Nos bajaremos los repositorios de epel y remi con las últimas versiones a instalar:

# yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
# yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm

Para versiones de CentOS 6, se tendría que realizar de la siguiente manera:

# yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm 
# yum install http://rpms.famillecollet.com/enterprise/remi-release-6.rpm


Epel.png





Remi.png



A continuación instalaremos yum-utils en el caso de que no lo tengamos instalado previamente en nuestra máquina, para poder utilizar el comando yum-config-manager:

yum install yum-utils
yum-config-manager --enable remi-php72


Yum manager.png



Para finalizar instalaremos la versión php7.2 en nuestro sistema:

yum install php php-mcrypt php-cli php-gd php-curl php-mysql php-ldap php-zip php-fileinfo php-snmp php-mbstring php-pecl-zip php-xmlrpc libxslt php-xml


Yum Install php.png



Y comprobamos finalmente la versión instalada.



Version 7 php.png




Si teníamos alguna versión de Pandora FMS instalada en nuestra máquina, deberemos reinstalar la consola de Pandora FMS para un correcto funcionamiento de la misma, debido a los cambios de versión de PHP, como podemos ver en el siguiente enlace.

En el caso de que aparezca algún aviso de incompatibilidad con el paquete de Pandora FMS Console instalado deberá copiar el rpm de la versión 729 dentro de este directorio, o en su defecto ejecutar el siguiente comando.

rpm -U --force *.rpm --nodeps

Existe la posibilidad de que durante la conversión a php7 el archivo php.ini se vea afectado. A continuación dejamos un ejemplo con algunos de los datos que php.ini debe tener:

engine = On
precision = 14
output_buffering = 4096
serialize_precision = -1
zend.enable_gc = On
expose_php = On
max_execution_time = 0
max_input_time = -1
memory_limit = 500M
error_reporting = E_ALL & ~E_DEPRECATED & ~E_NOTICE & ~E_USER_WARNING
log_errors = On
log_errors_max_len = 1024
report_memleaks = On
html_errors = On
variables_order = "GPCS"
request_order = "GP"
auto_globals_jit = On
post_max_size = 800M
default_mimetype = "text/html"
default_charset = "UTF-8"
file_uploads = On
upload_max_filesize = 800M
max_file_uploads = 20
allow_url_fopen = On
allow_url_include = Off
default_socket_timeout = 60
cli_server.color = On
pcre.jit=0
pdo_mysql.cache_size = 2000
sendmail_path = /usr/sbin/sendmail -t -i
mail.add_x_header = On

2.2.2 Windows

En primer lugar, debemos desplazarnos a la siguiente página web: https://windows.php.net/download/ para descargarnos la versión de PHP 7.2 que necesitemos; en nuestro caso bajaremos la versión VC15 x64 Thread Safe.



DescargaPhp7.jpg



Una vez tengamos descargado el zip, lo descomprimiremos en una carpeta llamada php.



DescompilarPhp7.jpg



A continuación, iremos a la carpeta localizada en C:\PandoraFMS\php, y la renombraremos a php_versionActual y copiaremos la nueva carpeta php que hemos creado.



CambioCarpeta.png



Una vez creada la carpeta, copiaremos el fichero php.ini-production y lo renombraremos a php.ini.

Tras finalizar este paso, tendremos que copiar el fichero libsals.dll y reemplazarlo por el mismo fichero en la carpeta de Apache C:\PandoraFMS\Apache\bin.

También será necesaria la instalación de Microsoft Visual C++ 2015: https://www.microsoft.com/en-us/download/details.aspx?id=48145 para el correcto funcionamiento de Pandora FMS.

Para finalizar, se deberá cambiar el fichero de httpd-php.conf y cambiar el LoadFile Y LoadModule a lo siguiente:



Httpd-php.png



2.2.3 Ubuntu

Para poder actualizar a php7 es necesario añadirlo al repositorio mediante el siguiente mandato:

sudo add-apt-repository ppa:ondrej/php 

Una vez realizado este paso, tendremos que realizar un update para que se instale:

sudo apt-get update

Para asegurarnos de que todos los paquetes de Apache se han instalado correctamente, y para confirmar que Apache podrá ejecutarse con la nueva versión, ejecutaremos también:

sudo apt-get install php7.2 

Y lo mismo para el resto de dependencias necesarias:

sudo apt-get install php7.2-mysql php7.2-cli php7.2-common php7.2-curl php7.2-gd php7.2-json php7.2-ldap php7.2-mbstring php7.2-opcache php7.2-readline php7.2-snmp php7.2-xml php7.2-xmlrpc php7.2-zip

En el caso de que se mantengan las dos instalaciones de php hay que deshabilitar la versión de php antigua para posteriormente habilitar la de php7 y realizar un reinicio de Apache.

a2dismod php5.6
a2enmod php7.2
service apache2 restart

2.2.4 Suse

Template warning.png

Es posible que con versiones antiguas de Suse u Opensuse no estén disponibles los paquetes de php7

 


Para instalar php 7 y sus extensiones tendremos que usar el siguiente mandato:

sudo zypper install php7 php7-mysql apache2-mod_php7

Una vez instalados, tendremos que activar el módulo de php7 y reiniciar el servidor Apache:

sudo a2enmod php7
sudo systemctl restart apache2

2.2.5 Realizar Actualización Offline en Centos

En el caso de que su entorno instalado con ISO de Pandora FMS no tenga acceso a Internet o su política de seguridad no le permita instalar un repositorio de terceros, hemos facilitado en nuestra web de soporte oficial (solo para clientes Enterprise), junto a los paquetes de la versión 729, todos los rpms necesarios para la actualización de php.

El procedimiento para realizar esta actualización es el siguiente:

1.- Descargar el tar.gz con los RPMs de nuestra web de soporte (hay rpms compatibles con Centos 6 x86, Centos 6 x64 y Centos 7 x64).

2.- Descomprimir en cualquier directorio el contenido del tar.gz.

tar xvzf rpm-php7-centos7.tar.gz 

3.- Acceder al directorio descomprimido mediante el comando cd y ejecutar el siguiente comando para actualizar los paquetes:

cd rpm-centos7-php7
rpm -U --force *.rpm

En el caso de que aparezca algún aviso de incompatibilidad con el paquete de Pandora FMS Console instalado deberá copiar el rpm de la versión 729 dentro de este directorio o en su defecto ejecutar el siguiente comando.

rpm -U --force *.rpm --nodeps



Volver a Indice de Documentacion Pandora FMS