CI: Call GHA workflow for tox verify.
[sim/a1-interface.git] / near-rt-ric-simulator / nginx.conf
1 #  ============LICENSE_START===============================================
2 #  Copyright (C) 2023 Nordix Foundation. All rights reserved.
3 #  ========================================================================
4 #  Licensed under the Apache License, Version 2.0 (the "License");
5 #  you may not use this file except in compliance with the License.
6 #  You may obtain a copy of the License at
7 #
8 #       http://www.apache.org/licenses/LICENSE-2.0
9 #
10 #  Unless required by applicable law or agreed to in writing, software
11 #  distributed under the License is distributed on an "AS IS" BASIS,
12 #  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 #  See the License for the specific language governing permissions and
14 #  limitations under the License.
15 #  ============LICENSE_END=================================================
16 #
17
18 worker_processes auto;
19 pid /run/nginx.pid;
20 include /etc/nginx/modules-enabled/*.conf;
21 load_module /usr/lib/nginx/modules/ndk_http_module.so;
22 load_module /usr/lib/nginx/modules/ngx_http_lua_module.so;
23
24 env ALLOW_HTTP;
25
26 events {
27     worker_connections 768;
28 }
29
30 http {
31
32     ##
33     # Basic Settings
34     ##
35
36     sendfile on;
37     tcp_nopush on;
38     tcp_nodelay on;
39     keepalive_timeout 65;
40     types_hash_max_size 2048;
41
42     include /etc/nginx/mime.types;
43     default_type application/octet-stream;
44
45
46
47     server { # simple reverse-proxy
48         set_by_lua $allow_http 'return os.getenv("ALLOW_HTTP")';
49         listen      8085;
50         listen      [::]:8085;
51         server_name  localhost;
52         if ($allow_http != true) {
53             return 444;
54         }
55
56         # serve dynamic requests
57         location / {
58             proxy_set_header   Host                 $host;
59             proxy_set_header   X-Real-IP            $remote_addr;
60             proxy_set_header   X-Forwarded-For      $proxy_add_x_forwarded_for;
61             proxy_pass      http://localhost:2222;
62         }
63     }
64
65     server { # simple reverse-proxy
66         listen      8185 ssl;
67         listen      [::]:8185 ssl;
68         server_name  localhost;
69         ssl_certificate     /usr/src/app/cert/cert.crt;
70         ssl_certificate_key /usr/src/app/cert/key.crt;
71         ssl_password_file   /usr/src/app/cert/pass;
72
73         # serve dynamic requests
74         location / {
75             proxy_set_header   Host                 $host;
76             proxy_set_header   X-Real-IP            $remote_addr;
77             proxy_set_header   X-Forwarded-For      $proxy_add_x_forwarded_for;
78             proxy_pass      http://localhost:2222;
79         }
80     }
81     ##
82     # SSL Settings
83     ##
84
85     ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # Dropping SSLv3, ref: POODLE
86     ssl_prefer_server_ciphers on;
87
88     ##
89     # Logging Settings
90     ##
91
92     access_log /var/log/nginx/access.log;
93     error_log /var/log/nginx/error.log;
94
95     ##
96     # Gzip Settings
97     ##
98
99     gzip on;
100
101 }