Receta: Habilitar php en NGINX
Luego de instalar nginx:
# sudo aptitude install nginx
solo hace falta instalar php:
sudo aptitude install php5-cgi
y crear este archivo /etc/init.d/php-fastcgi con el siguiente contenido:
Se le dan permisos de ejecución al script:
# chmod +x /etc/init.d/php-fastcgi
Y se levanta el interprete de php:
# /etc/init.d/php-fastcgi start
Sin olvidar incluirlo en la lista de servicios a arrancar automaticamente al iniciar el servidor:
# update-rc.d php-fastcgi defaults
Para probar que todo está funcionando bien, basta con agregar esto en la configuración de tu sitio en nginx:
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/nginx-default$fastcgi_script_name;
include fastcgi_params;
}
Colocar un archivo de ejemplo /var/www/nginx-default/test.php
< ?php
phpinfo();
? >
Y reiniciar nginx:
# /etc/init.d/nginx restart
Si al entrar al sitio por el navegador, ves el contendio de Php Info, estas listo
3 Comments
Te recomiendo indagar sobre php5-fpm (fastcgi process manager), ofrece excelentes resultados en combinación con nginx.
php5-fpm es un demonio que corre en paralelo con tu web server, en tu caso nginx, aparte de lo hecho por fastcgi se encarga de monitorizar la carga y es capaz de escalar dinámicamente, posee un archivo de configuracipon que te permite definir los recursos mínimos que deseas estén disponibles todo el tiempo así como el tope al que pueden llegar, de modo que pueda “jugar” con la carga.
Haz tus pruebas, de seguro obtendrás que es mucho más estable que libapache2-mod-php al aumentar el número de conexiones concurrentes.
Y además de lo que menciona milmazz, en vez de escuchar en un puerto puedes usar un socket, esto puede mejorar también como se gestiona la carga y la seguridad de las aplicaciones. El uso de php5-fpm se está recomendando bastante por todas esas características (lo sé por que me ha tocado últimamente trabajar con php :-/)
Excelentes comentarios, gracias! sin duda probaré php-fpm y les comentaré ademas de publicar también algun articulo sobre la diferencia, o alguna receta
Yo normalmente no trabajo con php, pero si me ha tocado montarlo para algunos amigos, y si se puede mejorar el desempeño, sin duda lo probaré.
Abrazo!
Leave a Reply
-->