// hosting · Web Platform Advent #15
Alojamiento PHP: compartido vs VPS, versiones y rendimiento
Qué mirar en un alojamiento PHP — compartido vs VPS, versiones y extensiones de PHP, despliegue, .htaccess y rendimiento con OPcache — sin el ruido del marketing.
PHP todavía impulsa una gran parte de la web, y alojarlo es terreno muy trillado — precisamente por eso todas las ofertas se parecen y las diferencias reales se esconden en los detalles. Esta guía cubre los criterios que de verdad importan: la disyuntiva compartido/VPS, las versiones y extensiones de PHP, cómo despliegas, qué controla el .htaccess y los ajustes de rendimiento que conviene conocer.
Alojamiento compartido vs VPS
La primera decisión es cuán aislado está tu entorno.
- Compartido — tu sitio convive con muchos otros en una misma máquina, gestionada por ti (PHP, servidor web, a menudo un panel de control). Lo más barato y simple; renuncias al control de la versión de PHP, las extensiones y la configuración del servidor, y compartes recursos con los vecinos.
- VPS — una porción dedicada de servidor con acceso root. Eliges la versión de PHP, instalas cualquier extensión, ajustas el servidor web y no te afectan otros inquilinos — pero eres responsable de las actualizaciones y la seguridad.
Para un sitio pequeño o un CMS estándar, el compartido suele bastar. Recurre a un VPS cuando necesites un build de PHP concreto, extensiones personalizadas, un rendimiento más previsible o control total del stack.
La versión de PHP importa
La versión de PHP no es un detalle — las versiones recientes son notablemente más rápidas y, sobre todo, aún reciben correcciones de seguridad. Ejecutar una versión sin soporte significa quedarse sin parches. Comprueba siempre qué versiones ofrece un alojamiento y si puedes cambiarlas con facilidad. La versión activa se lee desde el código o la CLI:
<?php
echo phpversion(); // p. ej. "8.3.x"
// o un informe completo:
phpinfo(); php -v Un buen alojamiento permite seleccionar la versión de PHP por sitio (a menudo en el panel de control) y mantiene disponible un rango de versiones soportadas, para que actualices a tu ritmo.
Extensiones: compruébalas antes de comprometerte
La funcionalidad de PHP se reparte en extensiones, y tu app probablemente depende de varias — un controlador de base de datos, el tratamiento de imágenes, etc. Las más comunes que conviene verificar en un alojamiento:
pdo_mysql/mysqli— conectividad MySQL/MariaDB.mbstring— manejo de cadenas multibyte, requerido por muchos frameworks.gdoimagick— procesamiento de imágenes.curl,openssl,zip,intl— peticiones HTTP, cifrado, archivos comprimidos, localización.
Lista lo que está realmente cargado en el servidor con:
php -m
Despliegue y .htaccess
En alojamiento compartido sueles desplegar subiendo archivos (SFTP) o trayéndolos desde Git a la raíz web; algunos alojamientos añaden un paso de despliegue desde el panel. En Apache, el archivo .htaccess de tu raíz web configura el comportamiento por directorio sin tocar la configuración principal del servidor — útil para URL limpias, redirecciones y cabeceras de caché. Un patrón común enruta todas las peticiones a un controlador frontal:
# .htaccess — enrutar todo a index.php (controlador frontal)
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^ index.php [L] Ten en cuenta que .htaccess es una función de Apache. En Nginx las reglas equivalentes viven en la configuración del servidor, que en compartido quizá no controles — otra razón para saber qué servidor web usa tu alojamiento.
Rendimiento: OPcache
La mayor ganancia de rendimiento en PHP es OPcache, que cachea el bytecode compilado para que PHP no vuelva a analizar y recompilar tus scripts en cada petición. La mayoría de alojamientos modernos lo activan por defecto; merece la pena confirmarlo. Ajustes típicos en php.ini:
opcache.enable=1
opcache.memory_consumption=128
opcache.max_accelerated_files=10000
opcache.validate_timestamps=1 En producción puedes poner opcache.validate_timestamps=0 para que PHP nunca compruebe cambios en los archivos, y vaciar la caché al desplegar — un poco más de velocidad a cambio de necesitar un reinicio explícito de la caché.
Lista rápida
| Criterio | Qué preguntar |
|---|---|
| Aislamiento | ¿Compartido (simple) o VPS (control)? |
| Versión de PHP | ¿Soportada, actual, cambiable? |
| Extensiones | ¿Están las que mi app necesita? |
| Servidor web | ¿Apache (.htaccess) o Nginx? |
| Rendimiento | ¿Está OPcache activado? |
El alojamiento PHP es maduro, así que no le des demasiadas vueltas a las marcas — ajusta el alojamiento a los requisitos reales de tu app: la versión de PHP correcta, las extensiones de las que dependes, un servidor web que entiendas y OPcache activado. Acierta en eso y el resto es sobre todo cuestión de preferencia.