En surfant sur le blog de Francois Simond blog.lienweb.fr j’y ai vu que sa future application idphoto.org était configurée pour fonctionner avec nginx et fastcgi.
FastCGI je connais, mais nginx (Engine X) non…
Je me suis amusé un peu sur ma debian Etch à voir comment cela pouvait fonctionner. Nginx est un serveur HTTP , HTTP reverse proxy et serveur proxy IMAP/POP3 écrit par Igor Sysoev.
Après avoir consulté les documentations disponibles j’ai pu faire tourner nginx devant un cluster Mongrel, c’est assez interressant, relativement facile à mettre en place.Je vais pouvoir mettre ca en place au boulot pour des tests ;)
Ressources:
* Un fichier de config générique régulièrement documenté [http://www.brainspl.at/nginx.conf.txt](http://www.brainspl.at/nginx.conf.txt) * [Wiki nginx](http://wiki.codemongers.com/Nginx) * [Page du wiki relative à Mongrel](http://wiki.codemongers.com/Nginx)pour ceux que ca interresse le fichier /etc/nginx/nginx.conf:
user www-data;
worker_processes 2;
error_log /var/log/nginx/error.log;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
access_log /var/log/nginx/access.log;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
tcp_nodelay on;
gzip on;
upstream mongrel {
server 127.0.0.1:5000;
server 127.0.0.1:5001;
server 127.0.0.1:5002;
}
server {
listen 80;
server_name localhost;
root /chemin vers application/public;
access_log off;
rewrite_log on;
location ~ ^/$ {
if (-f /index.html){
rewrite (.*) /index.html last;
}
proxy_pass http://mongrel;
}
location / {
if (!-f $request_filename.html) {
proxy_pass http://mongrel;
}
rewrite (.*) $1.html last;
}
location ~ .html {
root /chemin vers application/public;
}
location / {
proxy_pass http://mongrel;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
}
le cluster mongrel est configuré par cette commande: mongrel_rails cluster::configure -e development -p 5000 -N 3 -c chemin_vers_application -a 127.0.0.1
démarrage du cluster:
mongrel_rails cluster::startdémarrage de nginx:
/etc/init.d/nginx start
Et normalement votre application est accessible sous http://localhost
comments : 0 Add comment
