| 1 | user www-data;
|
|---|
| 2 | worker_processes auto;
|
|---|
| 3 | pid /run/nginx.pid;
|
|---|
| 4 |
|
|---|
| 5 | events {
|
|---|
| 6 | worker_connections 768;
|
|---|
| 7 | # multi_accept on;
|
|---|
| 8 | }
|
|---|
| 9 |
|
|---|
| 10 | http {
|
|---|
| 11 |
|
|---|
| 12 | ##
|
|---|
| 13 | # Basic Settings
|
|---|
| 14 | ##
|
|---|
| 15 |
|
|---|
| 16 | sendfile on;
|
|---|
| 17 | tcp_nopush on;
|
|---|
| 18 | tcp_nodelay on;
|
|---|
| 19 | keepalive_timeout 65;
|
|---|
| 20 | types_hash_max_size 2048;
|
|---|
| 21 | # server_tokens off;
|
|---|
| 22 |
|
|---|
| 23 | # server_names_hash_bucket_size 64;
|
|---|
| 24 | # server_name_in_redirect off;
|
|---|
| 25 |
|
|---|
| 26 | include /etc/nginx/mime.types;
|
|---|
| 27 | default_type application/octet-stream;
|
|---|
| 28 |
|
|---|
| 29 | ##
|
|---|
| 30 | # Logging Settings
|
|---|
| 31 | ##
|
|---|
| 32 |
|
|---|
| 33 | access_log /var/log/nginx/access.log;
|
|---|
| 34 | error_log /var/log/nginx/error.log;
|
|---|
| 35 |
|
|---|
| 36 | ##
|
|---|
| 37 | # Gzip Settings
|
|---|
| 38 | ##
|
|---|
| 39 |
|
|---|
| 40 | gzip on;
|
|---|
| 41 | gzip_disable "msie6";
|
|---|
| 42 |
|
|---|
| 43 | # gzip_vary on;
|
|---|
| 44 | # gzip_proxied any;
|
|---|
| 45 | # gzip_comp_level 6;
|
|---|
| 46 | # gzip_buffers 16 8k;
|
|---|
| 47 | # gzip_http_version 1.1;
|
|---|
| 48 | # gzip_types text/plain text/css application/x-javascript text/xml application/xml application/xml+rss text/javascript;
|
|---|
| 49 |
|
|---|
| 50 | #from https://mozilla.github.io/server-side-tls/ssl-config-generator/?server=nginx-1.9.3&openssl=1.0.1f&hsts=yes&profile=modern
|
|---|
| 51 | ssl_session_timeout 1d;
|
|---|
| 52 | ssl_session_cache shared:SSL:50m;
|
|---|
| 53 | ssl_protocols TLSv1.1 TLSv1.2;
|
|---|
| 54 | ssl_ciphers 'ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!3DES:!MD5:!PSK';
|
|---|
| 55 | ssl_prefer_server_ciphers on;
|
|---|
| 56 | ssl_trusted_certificate /etc/ssl/certs/ca-certificates.crt;
|
|---|
| 57 |
|
|---|
| 58 | log_subrequest on;
|
|---|
| 59 |
|
|---|
| 60 | server {
|
|---|
| 61 |
|
|---|
| 62 | listen 80 default_server;
|
|---|
| 63 | listen 443 default_server ssl http2;
|
|---|
| 64 |
|
|---|
| 65 | ssl_certificate /etc/nginx/certificates/test.pem;
|
|---|
| 66 | ssl_certificate_key /etc/nginx/certificates/test.key;
|
|---|
| 67 |
|
|---|
| 68 | location /with_auth_request {
|
|---|
| 69 | auth_request /auth_request_subrequest; # Removing this line stops POST body corruption
|
|---|
| 70 | proxy_pass "http://127.0.0.1:80/proxied";
|
|---|
| 71 | }
|
|---|
| 72 |
|
|---|
| 73 | location /auth_request_subrequest {
|
|---|
| 74 | proxy_pass_request_headers off;
|
|---|
| 75 | proxy_pass_request_body off;
|
|---|
| 76 | proxy_pass "http://127.0.0.1:80/proxied";
|
|---|
| 77 | }
|
|---|
| 78 |
|
|---|
| 79 | location /proxied {
|
|---|
| 80 | return 200 'ok';
|
|---|
| 81 | }
|
|---|
| 82 |
|
|---|
| 83 | }
|
|---|
| 84 | }
|
|---|