feb
23
2012

Actualizar version de PHP en servidores 1and1 con CentOS 5

Tengo un servidor virtual en 1and1. Qué quereis que os diga, tal como están los tiempos hay que mirar el euro, la desventaja de este proveedor es su pésimo o mejor dicho inexistente servicio de soporte, pero sabiendo lo que hay… El caso es que hoy necesitaba instalar un CMS que pide una version al menos PHP  5.3 y resulta que 1and1 provee sus servidores con una obsoleta versión PHP 5.1.6, asi que me ha tocado actualizar version de PHP, después de 4 horas y al menos 5 restauraciones de backups del servidor por diferentes fallos en la actualización e incompatiblidades con mysql, lo he conseguido.

Os pongo aquí los pasos seguidos, que he obtenido googleando y mezclando varias fuentes.

 

1 – Tenemos que acceder al servidor via SSH (con Putty por ejemplo) con los datos de acceso root de tu servidor.

2 – Aceptamos rpms de webtatic, bastante completo y seguro.

rpm -Uvh http://repo.webtatic.com/yum/centos/5/latest.rpm

3 – Actualizamos PHP mediante el repositorio de webtatic.

yum --enablerepo=webtatic update php

Este útlimo paso puede darte algún error, el primero de ellos tiene que ver con los paquetes php-mhash y php-mcurses si los tienes instalados, tendrás que borrarlos antes de actualizar php

yum remove php-mhash php-ncurses

Consideraciones:
A) Si no has establecido Time Zones por defecto para las fechas, puede ser que a partir de ahora recibas Warnings PHP o algunos casos Errores Fatales. Para arreglar esto lo mejor es que en tu aplicación o en tu php.ini configures correctamente la variable date.timezone (por ejemplo “Europe/Madrid”)

B) Puedes obtener errores “Deprecated”, no son graves, tan solo indican que en tu código estás usando funciones de PHP que han pasado a ser desaconsejadas y seguramente sustituidas por otras. La solución en este caso es cambiar el código para dejar de usar esas funciones, si ésto no es posible puedes desactivar los mensajes de error de uso de funciones desaconsejadas, deberás cambiar en el php.ini (/etc/php.ini) donde aparezca la linea

error_reporting = E_ALL

por la siguiente:

error_reporting = E_ALL & ~E_DEPRECATED

Fuentes:
Webtatic
Script Inside

3 Comentarios + Añadir Comentario

  • Hola.

    Estoy intentando seguir el tutorial y ando un poco perdido… Una vez que me logeo con putty en mi servidor, debo escribir eso de rpm -Uv…?

    Es que el servidor me dice command not found… no se si hay algo que no termino de comprender…

  • es algo más facil, he llamado y me lo han solucionado.
    En el panel de control, ir a Versión PHP global y ahí cambiar a php dev que es la versión para desarrolladores y da más que la 5.3

    • Hola Ana.

      Supongo que me estas hablando de un hosting normal o que han añadido la opción a posteriori, en el momento de escribir en el post esa opción no esta disponible y creo que sigue sin estarlo para Servidores Virutales y Dedicados NO Administrados.

      En su día la respuesta que yo recibí de 1and1 fue que me buscara la vida (la respuesta de siempre :) )

Deja tu comentario

Publicidad