Desarrollo y bases de datos

Versión de PHP en una web publicada con Deploy+

Revisado el 5 min de lectura php versiones despliegues htaccess

Deploy+ puede publicar un repositorio en cualquier carpeta de tu hosting: public_html, la carpeta de un dominio o de un subdominio, o una carpeta dentro de otra web. En esas carpetas, la sección PHP del área de clientes te enseña con qué versión corre la web, pero no te deja cambiarla ni fijar una versión en lo que cuelga de ellas.

Por qué no se cambia desde el área de clientes

Deploy+ prepara cada despliegue en una carpeta nueva y, cuando está listo, apunta a ella la carpeta publicada. Si el área de clientes escribiera la versión en el .htaccess de la carpeta publicada, esa línea se quedaría en el despliegue que estaba activo. En el siguiente, la web volvería a la versión de antes sin avisar.

Por eso, en una web publicada con Deploy+, la versión se decide en uno de estos dos sitios.

En el .htaccess de tu repositorio

Es la opción recomendada cuando la web necesita una versión concreta: la versión viaja con el código y llega igual en cada despliegue.

  1. Abre en tu repositorio el .htaccess de la raíz web, la carpeta del repositorio que queda publicada. En Laravel o Symfony suele ser public/; en WordPress o en un proyecto PHP simple, la raíz del repositorio. La ves en Deploy+, en la configuración del repositorio, como Raíz web. Si el fichero no existe, créalo.

  2. Añade la directiva de la versión que necesites. Por ejemplo, para PHP 8.3:

    AddType application/x-httpd-alt-php83 .php
    

    El número es la versión sin el punto: 82 para PHP 8.2, 74 para PHP 7.4. Tienes la lista completa en Versiones de PHP diferentes definidas por directorio o dominio.

  3. Si el fichero ya tiene una línea con x-httpd-alt-php, no añadas otra: cambia solo el número.

  4. Haz commit y despliega.

La versión vale para la raíz web y para todo lo que cuelga de ella. Para una carpeta concreta del proyecto, pon la directiva en el .htaccess de esa carpeta.

Con la versión por defecto de la cuenta

Si la web no tiene versión propia, usa la versión por defecto de la cuenta. Esa sí se cambia desde el área de clientes, porque no se escribe en ninguna carpeta.

En Hosting, abre tu servicio, ve a PHP y pulsa Cambiar la versión por defecto. Ten en cuenta que el cambio afecta a todas las webs sin versión propia, no solo a la publicada con Deploy+. Antes y después comprobamos que responden, y tienes 24 horas para volver atrás con un botón. Lo tienes explicado en Cambiar la versión de PHP de una web.

Si la web ya tiene versión propia en su .htaccess, cambiar la versión por defecto no la mueve: cámbiala en el repositorio.

Qué sigue funcionando desde el área de clientes

  • Extensiones y límites de PHP: son de cada versión en toda la cuenta, no de una carpeta, así que se cambian desde la ficha de la web como en cualquier otra.
  • Errores: el registro de errores de la web se consulta igual.

Comprobar el resultado

Después de desplegar, la sección PHP muestra la versión nueva en cuanto vuelve a leer tus webs, algo que hace una vez al día. Si quieres verlo antes, pulsa Actualizar en la Ficha técnica del servicio.

Más sobre cómo funcionan los despliegues en Deploy automático desde GitHub, GitLab o Bitbucket con rollback instantáneo.

También te puede ayudar

¿Algo no cuadra o ha cambiado? Cuéntanoslo y lo revisamos.