1 # Copyright (C) The Arvados Authors. All rights reserved.
3 # SPDX-License-Identifier: Apache-2.0
10 '[$time_local] "$http_x_request_id" $server_name $status $body_bytes_sent $request_time $request_method "$scheme://$http_host$request_uri" $remote_addr:$remote_port '
11 '"$http_referer" "$http_user_agent"';
12 access_log "{{ACCESSLOG}}" customlog;
13 client_body_temp_path "{{TMPDIR}}";
14 proxy_temp_path "{{TMPDIR}}";
15 fastcgi_temp_path "{{TMPDIR}}";
16 uwsgi_temp_path "{{TMPDIR}}";
17 scgi_temp_path "{{TMPDIR}}";
18 geo $external_client {
26 server {{UPSTREAMHOST}}:{{CONTROLLERPORT}};
29 listen {{LISTENHOST}}:{{CONTROLLERSSLPORT}} ssl;
30 server_name controller ~.*;
31 ssl_certificate "{{SSLCERT}}";
32 ssl_certificate_key "{{SSLKEY}}";
33 client_max_body_size 0;
35 proxy_pass http://controller;
36 proxy_set_header Upgrade $http_upgrade;
37 proxy_set_header Connection "upgrade";
38 proxy_set_header Host $http_host;
39 proxy_set_header X-External-Client $external_client;
40 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
41 proxy_set_header X-Forwarded-Proto https;
43 proxy_max_temp_file_size 0;
44 proxy_request_buffering off;
46 proxy_http_version 1.1;
49 upstream arv-git-http {
50 server {{UPSTREAMHOST}}:{{GITPORT}};
53 listen {{LISTENHOST}}:{{GITSSLPORT}} ssl;
54 server_name arv-git-http git.*;
55 ssl_certificate "{{SSLCERT}}";
56 ssl_certificate_key "{{SSLKEY}}";
58 proxy_pass http://arv-git-http;
59 proxy_set_header Host $http_host;
60 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
61 proxy_set_header X-Forwarded-Proto https;
66 server {{UPSTREAMHOST}}:{{KEEPPROXYPORT}};
69 listen {{LISTENHOST}}:{{KEEPPROXYSSLPORT}} ssl;
70 server_name keepproxy keep.*;
71 ssl_certificate "{{SSLCERT}}";
72 ssl_certificate_key "{{SSLKEY}}";
74 proxy_pass http://keepproxy;
75 proxy_set_header Host $http_host;
76 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
77 proxy_set_header X-Forwarded-Proto https;
80 client_max_body_size 67108864;
81 proxy_http_version 1.1;
82 proxy_request_buffering off;
86 server {{UPSTREAMHOST}}:{{KEEPWEBPORT}};
89 listen {{LISTENHOST}}:{{KEEPWEBSSLPORT}} ssl;
90 server_name keep-web collections.* ~\.collections\.;
91 ssl_certificate "{{SSLCERT}}";
92 ssl_certificate_key "{{SSLKEY}}";
94 proxy_pass http://keep-web;
95 proxy_set_header Host $http_host;
96 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
97 proxy_set_header X-Forwarded-Proto https;
100 client_max_body_size 0;
101 proxy_http_version 1.1;
102 proxy_request_buffering off;
106 server {{UPSTREAMHOST}}:{{HEALTHPORT}};
109 listen {{LISTENHOST}}:{{HEALTHSSLPORT}} ssl;
110 server_name health health.*;
111 ssl_certificate "{{SSLCERT}}";
112 ssl_certificate_key "{{SSLKEY}}";
114 proxy_pass http://health;
115 proxy_set_header Host $http_host;
116 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
117 proxy_set_header X-Forwarded-Proto https;
120 proxy_http_version 1.1;
121 proxy_request_buffering off;
125 listen {{LISTENHOST}}:{{KEEPWEBDLSSLPORT}} ssl;
126 server_name keep-web-dl download.* ~.*;
127 ssl_certificate "{{SSLCERT}}";
128 ssl_certificate_key "{{SSLKEY}}";
130 proxy_pass http://keep-web;
131 proxy_set_header Host $http_host;
132 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
133 proxy_set_header X-Forwarded-Proto https;
136 client_max_body_size 0;
137 proxy_http_version 1.1;
138 proxy_request_buffering off;
142 server {{UPSTREAMHOST}}:{{WSPORT}};
145 listen {{LISTENHOST}}:{{WSSSLPORT}} ssl;
146 server_name websocket ws.*;
147 ssl_certificate "{{SSLCERT}}";
148 ssl_certificate_key "{{SSLKEY}}";
150 proxy_pass http://ws;
151 proxy_set_header Upgrade $http_upgrade;
152 proxy_set_header Connection "upgrade";
153 proxy_set_header Host $http_host;
154 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
155 proxy_set_header X-Forwarded-Proto https;
158 client_max_body_size 0;
159 proxy_http_version 1.1;
160 proxy_request_buffering off;
163 upstream workbench1 {
164 server {{UPSTREAMHOST}}:{{WORKBENCH1PORT}};
167 listen {{LISTENHOST}}:{{WORKBENCH1SSLPORT}} ssl;
168 server_name workbench1 workbench1.* workbench.*;
169 ssl_certificate "{{SSLCERT}}";
170 ssl_certificate_key "{{SSLKEY}}";
172 proxy_pass http://workbench1;
173 proxy_set_header Host $http_host;
174 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
175 proxy_set_header X-Forwarded-Proto https;
179 upstream workbench2 {
180 server {{UPSTREAMHOST}}:{{WORKBENCH2PORT}};
183 listen {{LISTENHOST}}:{{WORKBENCH2SSLPORT}} ssl;
184 server_name workbench2 workbench2.*;
185 ssl_certificate "{{SSLCERT}}";
186 ssl_certificate_key "{{SSLKEY}}";
188 proxy_pass http://workbench2;
189 proxy_set_header Host $http_host;
190 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
191 proxy_set_header X-Forwarded-Proto https;