¿Cómo preparo mi sitio VPS para Debian Stretch?

A continuación se proporciona información para ayudarte a preparar tu sitio web para Debian Stretch.

¿Qué está cambiando?

Cualquier servidor privado nuevo comprado después del 9 de marzo de 2020 ejecuta el sistema operativo Debian Stretch. El antiguo sistema operativo era Ubuntu 14 (Trusty).

Que esperar

DreamHost se comunicará contigo por correo electrónico antes de la actualización.

El marco de tiempo de una actualización puede variar de un servidor a otro, sin embargo, el tiempo asegura que haya varios ingenieros altamente capacitados disponibles en caso de que surjan problemas importantes. La actualización en sí no debería tardar más de una hora en completarse.

VPS antiguo/descontinuado con usuarios admin / sudo

Aunque aún tendrás acceso de admin/sudo para realizar cambios en tu VPS después de la actualización, la actualización a Stretch puede no ser compatible con tus necesidades actuales. Por ejemplo, los siguientes cambios pueden afectar tu configuración actual:

  • La versión de PHP se está actualizando a 7.2.
  • Cualquier cambio realizado fuera de tu directorio /home no será retenido. DreamHost recomienda tomar nota de cualquier cambio en el sistema que hayas realizado con tu usuario admin/sudo, incluida la copia de seguridad de los datos y/o archivos de configuración almacenados fuera de /home.
  • Si utilizas Ruby, Python o ejecutas un sitio que depende en gran medida de paquetes de servidores específicos, DreamHost recomienda leer este artículo completo para obtener detalles específicos sobre cómo prepararse para la actualización.

También puedes considerar las siguientes opciones si necesitas tener más control sobre el entorno de tu servidor después de la actualización a Stretch:

  • Dado que la versión de PHP en tu servidor se actualizará a 7.2, puedes actualizar a un Dedicated Server (servidor dedicado), que aún podrá usar PHP 5.6 en el futuro previsible.
  • Si confías en una configuración altamente personalizada y deseas un control total sobre tus actualizaciones de software, DreamHost recomienda DreamCompute ya que proporciona una solución de computación en la nube más elástica, que es ideal para entornos totalmente no administrados.
  • Si no estás seguro o deseas analizar más a fondo una solución viable, no dudes en ponerte en Contact Support (contacto con el equipo de soporte técnico).

MySQL

Cambios de servidor

Los servidores DreamHost MySQL se actualizarán a la versión MySQL 5.7 como parte de la actualización de Ubuntu.

Palabras reservadas

MySQL 5.7 incluye una lista de "palabras reservadas" (como 'SELECT', 'DELETE', 'BIGINT', y 'VIRTUAL') que no pueden usarse como nombre de base de datos. Estas palabras pueden usarse como un nombre de tabla de base de datos, pero deben escaparse en las consultas de la base de datos. Las palabras reservadas en MySQL 5.7 requieren un tratamiento especial para su uso como identificadores, como nombres de tabla y columna.

Consulta el siguiente artículo para obtener más información sobre cómo usar palabras reservadas en MySQL 5.7:

Cambios en el servidor web

Cambio de versión de Apache (de 2.2 a 2.4)

Apache se está actualizando a la versión 2.4 (desde 2.2). Aunque esto no debería causar problemas importantes a su entorno de alojamiento, puede ver una lista de cambios en el siguiente artículo:

require valid-user

Si está utilizando un archivo .htaccess para proteger tu sitio con contraseña, asegúrate de agregar esta línea a tu archivo .htaccess:

require valid-user

Si no agregas esto, tu sitio arrojará un error 500 y se mostrará la siguiente línea en el error.log de tu sitio:

AH01627: AuthType configured with no corresponding authorization directives

'Coming soon' la página se muestra a pesar de que no existe

Puede ver que tu sitio muestra una página 'Coming soon' que no existe en su servidor web. Agrega la siguiente línea al archivo .htaccess de tu sitio para resolver esto.

DirectoryIndex disabled

WebDAV listado de archivos oculto si el índice está presente

En Apache 2.4, debe agregar el siguiente texto al archivo .htaccess para acceder al directorio de un archivo de índice utilizando WebDAV (no un navegador), ya que no mostrará la lista de archivos en el Explorador de Windows:

DirectoryIndex disabled

Boto-rsync

Debido a que boto-rsync es un software desactualizado y ya no se mantiene, también se elimina de la última versión de Debian Stretch. DreamHost recomienda usar S3cmd o AWS CLI en su lugar. Puedes encontrar más información sobre cómo usar S3cmd o AWS CLI en los siguientes artículos:

La versión de curl cambió a 7.52.1

La versión de curl cambió de 7.35.0 a 7.52.1.

FFmpeg y Libav

En Ubuntu 14 (Trusty), Libav reemplazó a FFmpeg, y FFmpeg fue eliminado por completo de Trusty. Con la actualización de Debian Stretch, esto se revierte: FFmpeg está de vuelta y Libav ha sido eliminado. Asegúrate de actualizar la configuración de tu archivo en consecuencia.

Cambio de sintaxis de FilterProvider

En Apache 2.4, la sintaxis de FilterProvider ha cambiado.

Muestra de versión anterior:

FilterProvider COMPRESS DEFLATE resp=Content-Type $text/html

Muestra de nueva versión:

FilterProvider COMPRESS DEFLATE "%{Content_Type} = 'text/html'"

Puedes leer más sobre esto en la documentación de Apache 2.4 mod_filter:

Cambio de versión de Java (de 7u151 a 8u242)

Debian Stretch incluye una nueva versión de Java versión 8, 8u242.

Esta es la primera actualización importante en bastante tiempo, por lo que definitivamente es una buena idea asegurarse de que las dependencias de Java que pueda tener sean compatibles con la versión 8.

Para obtener más información sobre las últimas versiones de Java, visita el siguiente enlace:

Cambio de versión de OpenSSL (1.0.1f a1.1.0l)

Debian Stretch incluye la versión 1.1.0l de OpenSSL.

Passenger

Para habilitar las páginas amigables con los errores de Passenger (que ayuda a solucionar problemas de actualización), agrega lo siguiente a un archivo .htaccess dentro de la aplicación:

PassengerFriendlyErrorPages on

Cambio de versión de Perl (de 5.18.4 a 5.24.1)

Debian Stretch incluye una nueva versión de Perl, 5.24.1. Entre los muchos cambios, esta actualización elimina el directorio actual (".") De @INC por razones de seguridad. Puedes leer sobre esto con más detalle aquí.

Para obtener más información sobre cómo actualizar su versión de Perl, visita el siguiente artículo:

Registro de errores de PHP

Los errores de PHP se registran en el archivo error.log de tu sitio de forma predeterminada. Tú cambia qué errores se informan y la ubicación de dónde se informan actualizando el archivo phprc de tu sitio. Ve el siguiente artículo para más detalles:

Cambios de versión de Python

Las siguientes versiones de Python están cambiando:

  • Actualización de versión de Python 2.7.13 a 3.5.3

Dado que Debian Stretch incluye un nuevo núcleo y sistema operativo, ya no admite versiones compiladas personalizadas de Python anteriores a 2.7.15. Si estás ejecutando una aplicación que utiliza una versión de Python que es anterior a 2.7.15, debes actualizar su código para que sea compatible con al menos 2.7.15 cuando corresponda.

Si necesitas usar una versión de Python anterior a 2.7.15, puedes considerar usar DreamCompute para configurar un entorno personalizado que permita el acceso a sudo. Para obtener más información sobre DreamCompute, consulta el siguiente artículo:

Si utilizaste una versión anterior a 2.7.15 al crear su virtualenv, es posible que debas reinstalar su virtualenv y todos los módulos con una versión más nueva:

Para obtener más información sobre las últimas versiones de Python, visita los siguientes enlaces:

Errores de Python Django

Después de la actualización, es posible que veas errores en su aplicación Django. Por ejemplo.

django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: libmysqlclient.so.18: cannot open shared object file: No such file or directory.
Did you install mysqlclient or MySQL-python?

Solución

Elimina tu directorio pip .cache.

Python virtual environment

Si tu sitio web está utilizando un entorno virtual de Python y nota algún error después de la actualización, reinstala tu entorno virtual y todos los módulos. Esto ayuda a garantizar que todo sea compatible con las nuevas bibliotecas del servidor.

Ejemplos de errores que puede ver son errores/advertencias de Django, Passenger o Python.

Ruby 2.7.0

La versión de Ruby en el servidor es 2.7.0. Si deseas tener más control sobre esto, DreamHost recomienda encarecidamente utilizar RVM.

Si estás usando Bundler, solo necesitas ejecutar:

[server]$ bundle exec gem pristine

Luego, vuelve a cargar el pasajero para que los cambios surtan efecto tocando un archivo restart.txt del directorio 'tmp' de su aplicación:

[server]$ touch  tmp/restart.txt

Cambio de versión de SSH a 7.4p1 (Sin llaves dsa)

La versión de SSH en los servidores Debian es 7.4p1. Ten en cuenta que las claves DSA no están disponibles en esta versión.

Versiones PHP Nginx

Las siguientes versiones de PHP están disponibles en máquinas Nginx:

  • 7.2
  • 7.3
  • 7.4

¿Cómo puedo encontrar soporte?

Si tienes alguna pregunta o inquietud, no dudes en contactar a soporte.

¿Este artículo ha respondido sus preguntas?

Última actualización el PST.

¿Aún no encuentra lo que busca?