public
Created

NginX config for Rails 3.1 & Unicorn

  • Download Gist
server.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 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
upstream example_backend {
server unix:/var/www/example.com/shared/unicorn.sock;
}
 
server {
listen 80;
server_name example.com www.example.com;
access_log off;
error_log off;
client_max_body_size 20M;
location / {
proxy_pass http://example_backend;
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;
# proxy_set_header X-Forwarded-Proto https; # for SSL, add this
 
client_max_body_size 10m;
client_body_buffer_size 128k;
 
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 90;
 
proxy_buffer_size 4k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
 
index index.html index.htm;
}
 
location ~ \.(jpg|png|mp3|ogg)$ {
valid_referers server_names;
if ($invalid_referer) {
return 403;
}
}
 
location ~ \.(jpg|png|mp3|ogg|js|css|html|gif)$ {
gzip_static on;
expires max;
add_header Cache-Control public;
}
 
location ~ ^/(images|javascripts|stylesheets|assets)/ {
root /var/www/example.com/current/public; # for asset pipeline and other static files
expires max;
break;
}
# redirect server error pages to the stat
error_page 500 502 503 504 /50x.html;
}

Please sign in to comment on this gist.

Something went wrong with that request. Please try again.