on master help sign in
Add fairly complex nginx config.

This is to contribute to issue #1213. I took some of the more complicated servers I am running as examples. Everything looks to be correctly highlighted compared to vim's syntax highlighting.

commit99ac5c30456b01d70c35b7f35cdfe3a3c2213907 authorAlan Berndt <alan@eatabrick.org> dateSat 24 Oct 2020, 04:09 (6 years ago) parentefab00a
2 files changed+280
tests/syntax-tests/highlighted/nginx/nginx.conf+140 tests/syntax-tests/source/nginx/nginx.conf+140
tests/syntax-tests/highlighted/nginx/nginx.confnew file+140
@@ -0,0 +1,140 @@
1+#user nobody;
2+worker_processes 1;
3+#pid logs/nginx.pid;
4+
5+load_module "/usr/local/libexec/nginx/ngx_http_xslt_filter_module.so";
6+load_module "/usr/local/libexec/nginx/ngx_rtmp_module.so";
7+
8+events {
9+ worker_connections 1024;
10+}
11+
12+http {
13+ include mime.types;
14+ default_type application/octet-stream;
15+ sendfile  on;
16+ keepalive_timeout 65;
17+ gzip  on;
18+ gzip_disable "msie6";
19+
20+ include /usr/local/etc/nginx/sites.d/*;
21+}
22+
23+rtmp {
24+ server {
25+ listen 1935;
26+ max_message 10M;
27+
28+ application wnob {
29+ live on;
30+ record off;
31+ }
32+
33+ application strim {
34+ live on;
35+ hls on;
36+
37+ hls_path /usr/local/www/hls/;
38+
39+ hls_variant _low BANDWIDTH=250000;
40+ hls_variant _mid BANDWIDTH=500000;
41+ hls_variant _high BANDWIDTH=1000000;
42+ hls_variant _hd720 BANDWIDTH=1500000;
43+ hls_variant _src BANDWIDTH=2000000;
44+ }
45+ }
46+}
47+
48+server {
49+ listen 443 ssl;
50+ server_name host.example.com
51+ root /usr/local/www/host.example.com/;
52+ error_page 404 /404.html;
53+
54+ index index.html;
55+ autoindex on;
56+ autoindex_localtime off;
57+ autoindex_format xml;
58+
59+ location / {
60+ xslt_stylesheet /usr/local/www/host.example.com/index.xslt;
61+ }
62+
63+ location ~ /\..* {
64+ return 404;
65+ }
66+
67+ location ~ /.+/ {
68+ xslt_stylesheet /usr/local/www/host.example.com/project.xslt;
69+ }
70+
71+ location ~ /.*\.xslt/ {
72+ return 404;
73+ }
74+
75+ location ~ \.thumb\.png$ {
76+ error_page 404 /404.thumb.png;
77+ }
78+ ssl_certificate /usr/local/etc/letsencrypt/live/host.example.com/fullchain.pem; # managed by Certbot
79+ ssl_certificate_key /usr/local/etc/letsencrypt/live/host.example.com/privkey.pem; # managed by Certbot
80+
81+ include /usr/local/etc/letsencrypt/options-ssl-nginx.conf;
82+ ssl_dhparam /usr/local/etc/letsencrypt/ssl-dhparams.pem;
83+
84+ add_header Strict-Transport-Security "max-age=31536000" always;
85+
86+}
87+
88+server {
89+ listen 80;
90+ server_name host.example.com;
91+
92+ if ($host = host.example.com) {
93+ return 301 https://$host$request_uri;
94+ }
95+
96+ return 404;
97+}
98+
99+server {
100+ listen 443 ssl;
101+ server_name other.example.com;
102+
103+ ssl_certificate /usr/local/etc/letsencrypt/live/other.example.com/fullchain.pem;
104+ ssl_certificate_key /usr/local/etc/letsencrypt/live/other.example.com/privkey.pem;
105+
106+ include /usr/local/etc/letsencrypt/options-ssl-nginx.conf;
107+ ssl_dhparam /usr/local/etc/letsencrypt/ssl-dhparams.pem;
108+
109+ add_header Strict-Transport-Security "max-age=31536000" always;
110+
111+ access_log /home/otherapp/logs/access.log;
112+ error_log /home/otherapp/logs/error.log;
113+
114+ client_max_body_size 5M;
115+
116+ location / {
117+ root /home/otherapp/app/static;
118+ index man.txt;
119+ try_files $uri @proxy;
120+ }
121+
122+ location @proxy {
123+ proxy_set_header Host $http_host;
124+ proxy_set_header X-Forwarded-Host $host;
125+ proxy_set_header X-Real-IP $remote_addr;
126+ proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
127+ proxy_pass http://unix:/var/run/otherapp/sock:;
128+ }
129+}
130+
131+server {
132+ listen 80;
133+ server_name other.example.com;
134+
135+ if ($host = other.example.com) {
136+ return 301 https://$host$request_uri;
137+ }
138+
139+ return 404;
140+}
tests/syntax-tests/source/nginx/nginx.confnew file+140
@@ -0,0 +1,140 @@
1+#user nobody;
2+worker_processes 1;
3+#pid logs/nginx.pid;
4+
5+load_module "/usr/local/libexec/nginx/ngx_http_xslt_filter_module.so";
6+load_module "/usr/local/libexec/nginx/ngx_rtmp_module.so";
7+
8+events {
9+ worker_connections 1024;
10+}
11+
12+http {
13+ include mime.types;
14+ default_type application/octet-stream;
15+ sendfile on;
16+ keepalive_timeout 65;
17+ gzip on;
18+ gzip_disable "msie6";
19+
20+ include /usr/local/etc/nginx/sites.d/*;
21+}
22+
23+rtmp {
24+ server {
25+ listen 1935;
26+ max_message 10M;
27+
28+ application wnob {
29+ live on;
30+ record off;
31+ }
32+
33+ application strim {
34+ live on;
35+ hls on;
36+
37+ hls_path /usr/local/www/hls/;
38+
39+ hls_variant _low BANDWIDTH=250000;
40+ hls_variant _mid BANDWIDTH=500000;
41+ hls_variant _high BANDWIDTH=1000000;
42+ hls_variant _hd720 BANDWIDTH=1500000;
43+ hls_variant _src BANDWIDTH=2000000;
44+ }
45+ }
46+}
47+
48+server {
49+ listen 443 ssl;
50+ server_name host.example.com
51+ root /usr/local/www/host.example.com/;
52+ error_page 404 /404.html;
53+
54+ index index.html;
55+ autoindex on;
56+ autoindex_localtime off;
57+ autoindex_format xml;
58+
59+ location / {
60+ xslt_stylesheet /usr/local/www/host.example.com/index.xslt;
61+ }
62+
63+ location ~ /\..* {
64+ return 404;
65+ }
66+
67+ location ~ /.+/ {
68+ xslt_stylesheet /usr/local/www/host.example.com/project.xslt;
69+ }
70+
71+ location ~ /.*\.xslt/ {
72+ return 404;
73+ }
74+
75+ location ~ \.thumb\.png$ {
76+ error_page 404 /404.thumb.png;
77+ }
78+ ssl_certificate /usr/local/etc/letsencrypt/live/host.example.com/fullchain.pem; # managed by Certbot
79+ ssl_certificate_key /usr/local/etc/letsencrypt/live/host.example.com/privkey.pem; # managed by Certbot
80+
81+ include /usr/local/etc/letsencrypt/options-ssl-nginx.conf;
82+ ssl_dhparam /usr/local/etc/letsencrypt/ssl-dhparams.pem;
83+
84+ add_header Strict-Transport-Security "max-age=31536000" always;
85+
86+}
87+
88+server {
89+ listen 80;
90+ server_name host.example.com;
91+
92+ if ($host = host.example.com) {
93+ return 301 https://$host$request_uri;
94+ }
95+
96+ return 404;
97+}
98+
99+server {
100+ listen 443 ssl;
101+ server_name other.example.com;
102+
103+ ssl_certificate /usr/local/etc/letsencrypt/live/other.example.com/fullchain.pem;
104+ ssl_certificate_key /usr/local/etc/letsencrypt/live/other.example.com/privkey.pem;
105+
106+ include /usr/local/etc/letsencrypt/options-ssl-nginx.conf;
107+ ssl_dhparam /usr/local/etc/letsencrypt/ssl-dhparams.pem;
108+
109+ add_header Strict-Transport-Security "max-age=31536000" always;
110+
111+ access_log /home/otherapp/logs/access.log;
112+ error_log /home/otherapp/logs/error.log;
113+
114+ client_max_body_size 5M;
115+
116+ location / {
117+ root /home/otherapp/app/static;
118+ index man.txt;
119+ try_files $uri @proxy;
120+ }
121+
122+ location @proxy {
123+ proxy_set_header Host $http_host;
124+ proxy_set_header X-Forwarded-Host $host;
125+ proxy_set_header X-Real-IP $remote_addr;
126+ proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
127+ proxy_pass http://unix:/var/run/otherapp/sock:;
128+ }
129+}
130+
131+server {
132+ listen 80;
133+ server_name other.example.com;
134+
135+ if ($host = other.example.com) {
136+ return 301 https://$host$request_uri;
137+ }
138+
139+ return 404;
140+}