otakemaru/spree-tutorial

View on GitHub
middleware/nginx/conf/nginx.conf

Summary

Maintainability
Test Coverage
events {
  worker_connections 1024;
}
http {
  charset UTF-8;

  include      mime.types;
  default_type application/octet-stream;

  gzip         on;
  gzip_disable "MSIE [1-6]\." "Mozilla/4";
  gzip_http_version 1.1;
  gzip_types text/plain
             text/xml
             text/css
             application/xml
             application/xhtml+xml
             application/xml+rss
             text/javascript
             application/x-javascript
             application/json;

  log_format main '$remote_addr - $remote_user [$time_local] "$request" '
                  '$status $body_bytes_sent "$http_referer" '
                  '"$http_user_agent" "$http_x_forwarded_for"';

  upstream backend {
    server ap:3000;
  }

  server {
    listen 80;
    server_name localhost;

    root   /usr/local/var/www/;

    location / {
      try_files $uri @proxy;
    }

    location @proxy {
      proxy_set_header Host               $http_host;
      proxy_set_header X-Forwarded-For    $proxy_add_x_forwarded_for;
      proxy_set_header X-Forwarded-Host   $host;
      proxy_set_header X-Forwarded-Server $host;
      proxy_set_header X-Real-IP          $remote_addr;
      proxy_set_header Connection         "";

      proxy_http_version 1.1;
      proxy_redirect     off;
      proxy_pass         http://backend;
    }

    location ~* \.(ico|css|js|gif|jpe?g|png)(\?[0-9]+)?$ {
      expires 1y;
    }

    location ~ /\..+ {
      deny  all;
    }
  }
}