Slashpub

vrubert's blog

Aplicación Rails en Servidor Web Nginx

Una aplicación rails funciona con su propio servidor web, normalmente en el puerto 3000 del sistema. Si queremos servir la aplicación en el puerto 80 estándar a través de Nginx, deberemos configurar este servidor web para que actúe de proxy hacia la aplicación rails.

Esta es la receta para el archivo nginx.conf:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
upstream rails.miservidor.com {
    server 127.0.0.1:3000;
}

server {
    listen   80;
    server_name rails.miservidor.com;
 
    access_log /var/www/rails.miservidor.com/log/access.log;
    error_log  /var/www/rails.miservidor.com/log/error.log;
    root       /var/www/rails.miservidor.com
    index      index.html;
 
    location / {
        proxy_set_header  X-Real-IP  $remote_addr;
        proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header  Host $http_host;
        proxy_redirect    off;
        try_files /system/maintenance.html $uri $uri/index.html $uri.html @ruby;
    }
 
    location @ruby {
        proxy_pass http://rails.miservidor.com;
    }
}

Comments