Advertisement
Guest User

Untitled

a guest
Jan 5th, 2018
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Nginx 4.38 KB | None | 0 0
  1. upstream optima-curis_web {
  2.   server localhost:5001;
  3. }
  4.  
  5. upstream optima-curis_api {
  6.   server localhost:3001;
  7. }
  8.  
  9. upstream optima-curis_chat {
  10.   server localhost:4041;
  11. }
  12.  
  13. # Redirect HTTP to HTTPS
  14. server {
  15.   listen 80;
  16.   server_name dev.optimacuris.com;
  17.   return 301 https://dev.optimacuris.com$request_uri;
  18. }
  19.  
  20. server {
  21.   charset UTF-8;
  22.   listen 443 ssl;
  23.   server_name dev.optimacuris.com;
  24.  
  25.   client_max_body_size 4G;
  26.   keepalive_timeout 10;
  27.  
  28.   error_page 500 502 504 /500.html;
  29.   error_page 503 @503;
  30.   access_log  /var/log/nginx/optima-curis-dev-access.log;
  31.   error_log   /var/log/nginx/optima-curis-dev-error.log;
  32.  
  33.   ssl_certificate /etc/nginx/certs/optimacuris.com.chained.crt;
  34.   ssl_certificate_key /etc/nginx/certs/optimacuris.com.key;
  35.  
  36.   # security-testing
  37.   ssl_stapling on;
  38.   ssl_prefer_server_ciphers on;
  39.   ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
  40.   ssl_ciphers "ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4";
  41.  
  42.   location /robots.txt {
  43.     root /var/www/html;
  44.   }
  45.  
  46.   location ~ ^/(chat|socket) {
  47.     proxy_http_version 1.1;
  48.     proxy_set_header Upgrade $http_upgrade;
  49.     proxy_set_header Connection "Upgrade";
  50.     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  51.     proxy_set_header X-Real-IP $remote_addr;
  52.     proxy_pass http://optima-curis_chat;
  53.   }
  54.  
  55.   location  ~ ^/(api|admin|users|assets) {
  56.     if ($request_method = 'OPTIONS') {
  57.       add_header 'Access-Control-Allow-Methods' 'GET, POST, PUT, DELETE, OPTIONS';
  58.       add_header 'Access-Control-Allow-Headers' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization';
  59.       add_header 'Access-Control-Max-Age' 1728000;
  60.       add_header 'Content-Type' 'text/plain charset=UTF-8';
  61.       add_header 'Content-Length' 0;
  62.       return 204;
  63.     }
  64.     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  65.     proxy_set_header Host $http_host;
  66.     proxy_set_header X-Real-IP $remote_addr;
  67.     proxy_hide_header 'Cache-Control';
  68.     proxy_redirect off;
  69.     proxy_pass http://optima-curis_api;
  70.     add_header 'Cache-Control' 'no-cache, no-store, max-age=0, must-revalidate';
  71.     add_header 'Pragma' 'no-cache';
  72.   }
  73.  
  74.   location = /50x.html {
  75.     root html;
  76.   }
  77.  
  78.   location = /404.html {
  79.     root html;
  80.   }
  81.  
  82.   location @503 {
  83.     error_page 405 = /system/maintenance.html;
  84.     if (-f $document_root/system/maintenance.html) {
  85.       rewrite ^(.*)$ /system/maintenance.html break;
  86.     }
  87.     rewrite ^(.*)$ /503.html break;
  88.   }
  89.  
  90.   if ($request_method !~ ^(GET|HEAD|PUT|PATCH|POST|DELETE|OPTIONS)$ ){
  91.     return 405;
  92.   }
  93.  
  94.   if (-f $document_root/system/maintenance.html) {
  95.     return 503;
  96.   }
  97.  
  98.   location ~ \.(php)$ {
  99.     return 405;
  100.   }
  101.  
  102.   location / {
  103.     proxy_set_header "Upgrade" "$http_upgrade";
  104.     proxy_set_header "Connection" "Upgrade";
  105.     proxy_set_header "X-Forwarded-For" "$proxy_add_x_forwarded_for";
  106.     proxy_http_version 1.1;
  107.     proxy_pass http://optima-curis_web;
  108.     add_header X-XSS-Protection "1; mode=block";
  109.     add_header X-Content-Type-Options nosniff;
  110.     add_header X-Frame-Options SAMEORIGIN;
  111.     add_header Strict-Transport-Security "max-age=31536000; includeSubdomains;";
  112.     add_header Content-Security-Policy "default-src 'self'; script-src 'self' https://www.google-analytics.com https://cdn.ravenjs.com https://js-agent.newrelic.com https://bam.nr-data.net; style-src 'self' 'unsafe-inline' https://fonts.googleapis.com; font-src 'self' https://fonts.gstatic.com https://fonts.googleapis.com https://cdn.rawgit.com data:; connect-src 'self' wss://dev.optimacuris.com https://sentry.io https://s3.amazonaws.com; img-src 'self' https://www.google-analytics.com https://optima-dev.s3.amazonaws.com;";
  113.     add_header 'Referrer-Policy' 'no-referrer';
  114.     add_header 'Access-Control-Allow-Origin' 'https://dev.optimacuris.com https://s3.amazonaws.com';
  115.   }
  116. }
  117.  
  118. # Render 404 when accessing only by ip
  119. server {
  120.   listen 80;
  121.   listen 443;
  122.   server_name 34.206.37.40;
  123.   return 404;
  124. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement