nginx y fastcgi: una configuración de PHP de alto rendimiento
La ejecución de aplicaciones PHP con NGINX y FASTCGI ofrece ventajas significativas de rendimiento y escalabilidad sobre el enfoque tradicional de apache/mod_php. Los detalles de esta guía configuran esta arquitectura de alto rendimiento en el servidor Ubuntu, aprovechando la eficiencia de FastCGI y la potencia de Nginx.
fastcgi: a rendimiento boost
La sobrecarga inherente de CGI de crear un nuevo proceso para cada solicitud es mitigada por FastCGI. FastCGI mantiene procesos persistentes, reduciendo significativamente la CPU y el consumo de tiempo. Esto conduce a una mejor escalabilidad y una eficiencia general del servidor. La imagen a continuación ilustra un proceso CGI típico.
Instalación y configuración básica
instalar php y nginx: use apt para instalar los paquetes necesarios:
sudo apt-get install php5-cli php5-fpm nginx
configure nginx: Evite editar directamente la configuración Nginx predeterminada. En su lugar, cree una copia:
cd /etc/nginx
sudo rm sites-enabled/default
sudo cp sites-available/default sites-available/my-default
sudo ln -s /etc/nginx/sites-available/my-default sites-enabled/default
enable fastcgi: incomment Las líneas relevantes en /etc/nginx/sites-avalable/my-default
para enrutar las solicitudes de PHP al servicio FastCGI (PHP5-FPM). La sección crucial debe parecerse a esto:
location ~ \.php$ {
fastcgi_split_path_info ^(. \.php)(/. )$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}
inicio nginx:
sudo service nginx start
Verify Instalation: create info.php
(conteniendo Php phpinfo ();?>
) en la raíz web (/usr/share/nginx/html
). Acceder a info.php
en su navegador debe mostrar información de PHP, confirmando la integración de NGINX y PHP a través de FastCGI. La API del servidor debe mostrar "fpm/fastcgi".
Mejoras de configuración esencial
Permisos de raíz web: ajuste los permisos para evitar constantes sudo
use:
sudo adduser www-data
sudo chgrp -R www-data /usr/share/nginx/html
sudo chmod -R g rw /usr/share/nginx/html
sudo chmod g s /usr/share/nginx/html
manejar scripts no existentes: agregue una directiva try_files
a la configuración de Nginx para mejorar la seguridad:
location ~ \.php$ {
try_files $uri $uri/ =404;
# ... other FastCGI directives ...
}
migrando desde apache: use convertidores en línea para traducir las directivas apache (e.g., . Htaccess
reglas) a los equivalentes nginx. Revise cuidadosamente la configuración convertida antes de implementarla.
Conclusión
Esta guía proporciona una base robusta para establecer un entorno PHP de alto rendimiento utilizando NGINX y FASTCGI. Siguiendo estos pasos e incorporando las mejoras recomendadas de seguridad y rendimiento, puede crear un servidor web escalable y eficiente para sus aplicaciones PHP. Recuerde consultar siempre la documentación oficial de NGINX y PHP para la información y las mejores prácticas más actualizadas.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3