🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Cómo cambiar la zona horaria en cPanel y PHP (guía rápida)

Actualizado el 28 de diciembre de 2025

¿Por qué es importante tener la zona horaria correcta en tu servidor?

Cuando tu servidor tiene una hora incorrecta, todo se desincroniza. Los registros de errores, las copias de seguridad, el envío de correos electrónicos y, sobre todo, las fechas de publicación de tu sitio web pueden mostrar datos equivocados. Si tu web es una tienda online, un foro o un blog con programación de contenidos, una zona horaria mal configurada puede provocar que publiques un artículo antes de tiempo o que los tickets de soporte aparezcan con horas ilógicas.

Además, muchas aplicaciones PHP (como WordPress, Joomla o PrestaShop) dependen de la configuración del servidor para mostrar la hora local. Si no sincronizas todo, los usuarios verán fechas confusas y podrías perder credibilidad. Por eso, saber cambiar zona horaria cPanel y ajustar la zona horaria php es una habilidad básica que todo administrador debería dominar.


¿Qué diferencia hay entre la zona horaria del sistema y la de PHP?

Antes de empezar, es clave entender que existen dos capas distintas:

  • Zona horaria del sistema operativo (servidor): Es la que usa Linux para registrar eventos, programar tareas (cron jobs) y mostrar la hora en la terminal. Se configura a nivel de sistema.
  • Zona horaria de PHP: Es la que usan tus aplicaciones web. PHP tiene su propia configuración que puede ser distinta a la del sistema. Si no la defines, PHP usará la que tenga establecida por defecto en el archivo php.ini, que muchas veces es UTC.

Por eso, aunque cambies la hora del servidor, si no ajustas la php timezone, tus scripts seguirán mostrando la hora antigua. La solución completa implica modificar ambas capas.


Paso 1: Cambiar la zona horaria en cPanel (interfaz gráfica)

La forma más sencilla para usuarios sin experiencia es usar el propio cPanel. No necesitas tocar archivos de configuración manualmente.

  1. Inicia sesión en tu cPanel con tu usuario y contraseña.
  2. Busca la sección "Preferencias" o "Configuración" (depende de la versión, puede variar ligeramente).
  3. Haz clic en "Cambiar zona horaria" o "Time Zone".
  4. Se abrirá un menú desplegable con todas las zonas horarias del mundo. Selecciona la que corresponda a tu ubicación (por ejemplo, America/Mexico_City, Europe/Madrid o America/Argentina/Buenos_Aires).
  5. Haz clic en "Guardar" o "Update".

Con esto, la zona horaria del servidor queda configurada. Sin embargo, esto no siempre afecta a PHP. Para asegurarte, debes revisar el siguiente paso.

[INFO] Si no encuentras la opción en tu cPanel, es posible que tu proveedor de hosting la haya ocultado. En ese caso, contacta con soporte o sigue el método manual que te explico abajo.


Paso 2: Cambiar la zona horaria de PHP (php timezone) desde cPanel

La mayoría de los cPanel modernos incluyen un selector de versiones de PHP y ajustes avanzados. Para cambiar la zona horaria php:

  1. Ve a la sección "Software" o "Lenguajes" dentro de cPanel.
  2. Busca "Select PHP Version" o "MultiPHP Manager" (en versiones más nuevas).
  3. Haz clic en el icono "Switch to PHP Options" o "Configure PHP".
  4. Se abrirá una lista con muchas directivas. Busca la opción date.timezone.
  5. En el campo de valor, escribe la zona horaria en formato PHP válido (por ejemplo, Europe/Madrid). Si no sabes cuál usar, consulta la lista oficial de zonas horarias PHP.
  6. Guarda los cambios.

Después de esto, PHP usará la nueva zona horaria. Puedes verificarlo creando un archivo temporal con el siguiente código:

<?php echo date_default_timezone_get(); ?>

Si te devuelve la zona que elegiste, todo está correcto. Si no, puede que tu hosting tenga una configuración especial.

[WARNING] Si tu cPanel no tiene la opción "Select PHP Version", significa que estás en un plan de hosting muy limitado. En ese caso, deberás usar el método manual con archivos .htaccess o php.ini, que te explico a continuación.


Paso 3: Método manual para cambiar zona horaria php (sin cPanel)

Si tu cPanel es antiguo o tu proveedor no permite modificar la configuración de PHP desde la interfaz, puedes hacerlo manualmente. Hay dos formas:

Opción A: Usar el archivo .htaccess

Este método funciona para la mayoría de los servidores Apache con PHP como módulo.

  1. Conéctate a tu hosting por FTP o usa el Administrador de Archivos de cPanel.
  2. Busca el archivo .htaccess en la raíz de tu dominio (normalmente en public_html).
  3. Si no existe, créalo con un editor de texto plano.
  4. Añade la siguiente línea al final:
php_value date.timezone "Europe/Madrid"

Reemplaza Europe/Madrid por tu zona horaria. Guarda el archivo y sube los cambios.

Opción B: Crear un archivo php.ini personalizado

Algunos servidores permiten un php.ini local en la raíz del sitio.

  1. Crea un archivo llamado php.ini en public_html.
  2. Dentro, escribe:
date.timezone = "Europe/Madrid"
  1. Guarda y sube el archivo.

[TIP] Si usas WordPress, también puedes forzar la zona horaria desde el archivo wp-config.php añadiendo la línea: date_default_timezone_set('Europe/Madrid');. Pero es mejor hacerlo a nivel de servidor para que todas las aplicaciones lo hereden.


Paso 4: Configurar la hora del servidor a nivel de sistema (Linux)

Si tienes acceso SSH (VPS o servidor dedicado), puedes cambiar la zona horaria del sistema operativo directamente. Esto es útil si además de cPanel quieres sincronizar los logs del sistema.

  1. Conéctate por SSH a tu servidor.
  2. Ejecuta el comando:
sudo timedatectl list-timezones

Esto mostrará todas las zonas disponibles. Busca la tuya.

  1. Para establecerla, usa:
sudo timedatectl set-timezone Europe/Madrid
  1. Verifica con:
timedatectl

Deberías ver la nueva zona horaria y el estado de sincronización NTP.

Si tu sistema es más antiguo (CentOS 6 o similar), puedes usar el comando tzselect o editar el archivo /etc/timezone manualmente.

[INFO] En Syspanel (el panel de control alternativo que usa el puerto 2106), también puedes cambiar la zona horaria desde su interfaz web, en la sección "Configuración del servidor". Es bastante intuitivo.


Paso 5: Sincronizar con NTP (Network Time Protocol)

Aunque cambies la zona horaria, si el reloj del servidor está mal, seguirás teniendo problemas. La solución es activar NTP.

  1. Instala NTP si no lo tienes:
sudo apt install ntp  # Debian/Ubuntu
sudo yum install ntp  # CentOS
  1. Inicia el servicio y habilítalo para que arranque con el sistema:
sudo systemctl start ntp
sudo systemctl enable ntp
  1. Forzar una sincronización inmediata:
sudo ntpdate -u pool.ntp.org

Con esto, el servidor siempre tendrá la hora correcta y la zona horaria que hayas elegido.


Cómo verificar que todo funciona correctamente

Después de aplicar los cambios, es importante comprobar que todo está bien. Puedes hacerlo de varias formas:

  • Desde cPanel: Ve a "Información del servidor" y revisa la hora que aparece.
  • Desde un script PHP: Crea un archivo con <?php echo date('Y-m-d H:i:s'); ?> y ejecútalo en el navegador.
  • Desde SSH: Ejecuta date y php -i | grep timezone.

Si todo coincide, has terminado. Si no, revisa que no haya caché de opcache o que el archivo .htaccess esté bien escrito.


Preguntas frecuentes sobre cambiar zona horaria cPanel

¿Qué pasa si no cambio la zona horaria de PHP?

Las aplicaciones usarán la hora UTC por defecto, lo que puede causar diferencias de varias horas con tu hora local. Esto afecta a la programación de publicaciones, emails transaccionales y registros de actividad.

¿Puedo tener zonas horarias diferentes para cada dominio?

Sí, si cada dominio tiene su propio .htaccess o php.ini en su raíz, puedes asignar zonas distintas. Esto es útil si gestionas webs para clientes en diferentes países.

¿Afecta el cambio de zona horaria a las bases de datos?

No directamente. MySQL tiene su propia zona horaria, pero si usas funciones como NOW(), tomará la del sistema. Si necesitas cambiarla, tendrías que modificar la configuración de MySQL también.

¿Cuánto tarda en hacer efecto el cambio?

Inmediatamente. No necesitas reiniciar el servidor en la mayoría de los casos. Si usas opcache, puede tardar unos segundos en refrescarse.

¿Qué hago si mi proveedor no me deja cambiar la zona horaria?

Contacta con su soporte y pídeles que lo cambien a nivel de servidor. Si no pueden, siempre puedes usar el método de .htaccess o definir la zona horaria en el código de tu aplicación.


Conclusión

Cambiar la zona horaria en cPanel y la php timezone es un proceso sencillo si sigues los pasos correctos. La clave está en modificar tanto el sistema operativo como la configuración de PHP para evitar inconsistencias. Recuerda que la mayoría de los hosting compartidos permiten hacerlo desde el propio cPanel, pero si no, siempre tienes la opción manual con .htaccess o php.ini.

Una vez que tengas la hora correcta, notarás que todo funciona mejor: los correos salen con la hora adecuada, las publicaciones se programan bien y los logs son más fáciles de interpretar. No subestimes la importancia de este pequeño ajuste: puede ahorrarte muchos dolores de cabeza a largo plazo.

[TIP] Si usas Syspanel (acceso por puerto 2106), recuerda que también puedes gestionar la zona horaria desde su panel, pero siempre verifica que PHP herede esa configuración, ya que a veces es necesario ajustar ambos por separado.


Recursos adicionales

Si tienes más dudas, deja un comentario o contacta con tu proveedor de hosting. ¡Buena suerte con la configuración!

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel