Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/certbot/certbot.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'certbot-nginx/tests/testdata/etc_nginx')
-rw-r--r--certbot-nginx/tests/testdata/etc_nginx/broken.conf12
-rw-r--r--certbot-nginx/tests/testdata/etc_nginx/comment_in_file.conf1
-rw-r--r--certbot-nginx/tests/testdata/etc_nginx/edge_cases.conf27
-rw-r--r--certbot-nginx/tests/testdata/etc_nginx/foo.conf25
-rw-r--r--certbot-nginx/tests/testdata/etc_nginx/mime.types0
-rw-r--r--certbot-nginx/tests/testdata/etc_nginx/minimalistic_comments.conf12
-rw-r--r--certbot-nginx/tests/testdata/etc_nginx/multiline_quotes.conf16
-rw-r--r--certbot-nginx/tests/testdata/etc_nginx/nginx.conf122
-rw-r--r--certbot-nginx/tests/testdata/etc_nginx/server.conf1
-rw-r--r--certbot-nginx/tests/testdata/etc_nginx/sites-enabled/default10
-rw-r--r--certbot-nginx/tests/testdata/etc_nginx/sites-enabled/example.com6
-rw-r--r--certbot-nginx/tests/testdata/etc_nginx/sites-enabled/globalssl.com9
-rw-r--r--certbot-nginx/tests/testdata/etc_nginx/sites-enabled/headers.com4
-rw-r--r--certbot-nginx/tests/testdata/etc_nginx/sites-enabled/ipv6.com5
-rw-r--r--certbot-nginx/tests/testdata/etc_nginx/sites-enabled/ipv6ssl.com7
-rw-r--r--certbot-nginx/tests/testdata/etc_nginx/sites-enabled/migration.com19
-rw-r--r--certbot-nginx/tests/testdata/etc_nginx/sites-enabled/sslon.com6
-rw-r--r--certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/fastcgi_params25
-rw-r--r--certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/koi-utf108
-rw-r--r--certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/koi-win102
-rw-r--r--certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/mime.types79
-rw-r--r--certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/naxsi-ui.conf.1.4.116
-rw-r--r--certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/naxsi.rules13
-rw-r--r--certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/naxsi_core.rules75
-rw-r--r--certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/nginx.conf95
-rw-r--r--certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/proxy_params4
-rw-r--r--certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/scgi_params14
-rw-r--r--certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/sites-available/default112
l---------certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/sites-enabled/default1
-rw-r--r--certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/uwsgi_params15
-rw-r--r--certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/win-utf125
31 files changed, 1066 insertions, 0 deletions
diff --git a/certbot-nginx/tests/testdata/etc_nginx/broken.conf b/certbot-nginx/tests/testdata/etc_nginx/broken.conf
new file mode 100644
index 000000000..98aef55d6
--- /dev/null
+++ b/certbot-nginx/tests/testdata/etc_nginx/broken.conf
@@ -0,0 +1,12 @@
+# A faulty configuration file
+
+pid logs/nginx.pid;
+
+
+events {
+ worker_connections 1024;
+}
+
+include foo.conf;
+
+@@@
diff --git a/certbot-nginx/tests/testdata/etc_nginx/comment_in_file.conf b/certbot-nginx/tests/testdata/etc_nginx/comment_in_file.conf
new file mode 100644
index 000000000..f761079fa
--- /dev/null
+++ b/certbot-nginx/tests/testdata/etc_nginx/comment_in_file.conf
@@ -0,0 +1 @@
+# a comment inside a file \ No newline at end of file
diff --git a/certbot-nginx/tests/testdata/etc_nginx/edge_cases.conf b/certbot-nginx/tests/testdata/etc_nginx/edge_cases.conf
new file mode 100644
index 000000000..477cb1c45
--- /dev/null
+++ b/certbot-nginx/tests/testdata/etc_nginx/edge_cases.conf
@@ -0,0 +1,27 @@
+# This is not a valid nginx config file but it tests edge cases in valid nginx syntax
+
+server {
+ server_name simple;
+}
+
+server {
+ server_name with.if;
+ location ~ ^/services/.+$ {
+ if ($request_filename ~* \.(ttf|woff)$) {
+ add_header Access-Control-Allow-Origin "*";
+ }
+ }
+}
+
+server {
+ server_name with.complicated.headers;
+
+ location ~* \.(?:gif|jpe?g|png)$ {
+
+ add_header Pragma public;
+ add_header Cache-Control 'public, must-revalidate, proxy-revalidate' "test,;{}" foo;
+ blah "hello;world";
+
+ try_files $uri @rewrites;
+ }
+}
diff --git a/certbot-nginx/tests/testdata/etc_nginx/foo.conf b/certbot-nginx/tests/testdata/etc_nginx/foo.conf
new file mode 100644
index 000000000..574955398
--- /dev/null
+++ b/certbot-nginx/tests/testdata/etc_nginx/foo.conf
@@ -0,0 +1,25 @@
+# a test nginx conf
+user www-data;
+
+http {
+ server {
+ listen *:80 default_server ssl;
+ server_name *.www.foo.com *.www.example.com;
+ root /home/ubuntu/sites/foo/;
+
+ location /status {
+ types {
+ image/jpeg jpg;
+ }
+ }
+
+ location ~ case_sensitive\.php$ {
+ index index.php;
+ root /var/root;
+ }
+ location ~* case_insensitive\.php$ {}
+ location = exact_match\.php$ {}
+ location ^~ ignore_regex\.php$ {}
+
+ }
+}
diff --git a/certbot-nginx/tests/testdata/etc_nginx/mime.types b/certbot-nginx/tests/testdata/etc_nginx/mime.types
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/certbot-nginx/tests/testdata/etc_nginx/mime.types
diff --git a/certbot-nginx/tests/testdata/etc_nginx/minimalistic_comments.conf b/certbot-nginx/tests/testdata/etc_nginx/minimalistic_comments.conf
new file mode 100644
index 000000000..cf4648592
--- /dev/null
+++ b/certbot-nginx/tests/testdata/etc_nginx/minimalistic_comments.conf
@@ -0,0 +1,12 @@
+# Use bar.conf when it's a full moon!
+include foo.conf; # Kilroy was here
+check_status;
+
+server {
+ #
+ # Don't forget to open up your firewall!
+ #
+ listen 1234;
+ # listen 80;
+}
+
diff --git a/certbot-nginx/tests/testdata/etc_nginx/multiline_quotes.conf b/certbot-nginx/tests/testdata/etc_nginx/multiline_quotes.conf
new file mode 100644
index 000000000..74cd84bcd
--- /dev/null
+++ b/certbot-nginx/tests/testdata/etc_nginx/multiline_quotes.conf
@@ -0,0 +1,16 @@
+# Test nginx configuration file with multiline quoted strings.
+# Good example of usage for multilined quoted values is when
+# using Openresty's Lua directives and you wish to keep the
+# inline Lua code readable.
+http {
+ server {
+ listen *:443; # because there should be no other port open.
+
+ location / {
+ body_filter_by_lua 'ngx.ctx.buffered = (ngx.ctx.buffered or "") .. string.sub(ngx.arg[1], 1, 1000)
+ if ngx.arg[2] then
+ ngx.var.resp_body = ngx.ctx.buffered
+ end';
+ }
+ }
+}
diff --git a/certbot-nginx/tests/testdata/etc_nginx/nginx.conf b/certbot-nginx/tests/testdata/etc_nginx/nginx.conf
new file mode 100644
index 000000000..ccce4dc1b
--- /dev/null
+++ b/certbot-nginx/tests/testdata/etc_nginx/nginx.conf
@@ -0,0 +1,122 @@
+# standard default nginx config
+
+user nobody;
+worker_processes 1;
+
+error_log logs/error.log;
+error_log logs/error.log notice;
+error_log logs/error.log info;
+
+pid logs/nginx.pid;
+
+
+events {
+ worker_connections 1024;
+}
+
+empty {
+}
+
+include foo.conf;
+
+http {
+ include mime.types;
+ include sites-enabled/*;
+ default_type application/octet-stream;
+
+ log_format main '$remote_addr - $remote_user [$time_local] "$request" '
+ '$status $body_bytes_sent "$http_referer" '
+ '"$http_user_agent" "$http_x_forwarded_for"';
+
+ access_log logs/access.log main;
+
+ sendfile on;
+ tcp_nopush on;
+
+ keepalive_timeout 0;
+
+ gzip on;
+
+ server {
+ listen 8080;
+ server_name localhost;
+ server_name ~^(www\.)?(example|bar)\.;
+
+ charset koi8-r;
+
+ access_log logs/host.access.log main;
+
+ location / {
+ root html;
+ index index.html index.htm;
+ }
+
+ error_page 404 /404.html;
+
+ # redirect server error pages to the static page /50x.html
+ error_page 500 502 503 504 /50x.html;
+ location = /50x.html {
+ root html;
+ }
+
+ # proxy the PHP scripts to Nginx listening on 127.0.0.1:80
+ #
+ location ~ \.php$ {
+ proxy_pass http://127.0.0.1;
+ }
+
+ # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
+ #
+ location ~ \.php$ {
+ root html;
+ fastcgi_pass 127.0.0.1:9000;
+ fastcgi_index index.php;
+ fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
+ }
+
+ # deny access to .htaccess files, if Nginx's document root
+ # concurs with nginx's one
+ #
+ location ~ /\.ht {
+ deny all;
+ }
+ }
+
+
+ # another virtual host using mix of IP-, name-, and port-based configuration
+ #
+ server {
+ listen 8000;
+ listen somename:8080;
+ include server.conf;
+
+ location / {
+ root html;
+ index index.html index.htm;
+ }
+ }
+
+
+ # HTTPS server
+ #
+ #server {
+ # listen 443 ssl;
+ # server_name localhost;
+
+ # ssl_certificate cert.pem;
+ # ssl_certificate_key cert.key;
+
+ # ssl_session_cache shared:SSL:1m;
+ # ssl_session_timeout 5m;
+
+ # ssl_ciphers HIGH:!aNULL:!MD5;
+ # ssl_prefer_server_ciphers on;
+
+ # location / {
+ # root html;
+ # index index.html index.htm;
+ # }
+ #}
+
+ #include conf.d/test.conf;
+}
diff --git a/certbot-nginx/tests/testdata/etc_nginx/server.conf b/certbot-nginx/tests/testdata/etc_nginx/server.conf
new file mode 100644
index 000000000..5fc4c8b24
--- /dev/null
+++ b/certbot-nginx/tests/testdata/etc_nginx/server.conf
@@ -0,0 +1 @@
+server_name somename alias another.alias;
diff --git a/certbot-nginx/tests/testdata/etc_nginx/sites-enabled/default b/certbot-nginx/tests/testdata/etc_nginx/sites-enabled/default
new file mode 100644
index 000000000..e167761d1
--- /dev/null
+++ b/certbot-nginx/tests/testdata/etc_nginx/sites-enabled/default
@@ -0,0 +1,10 @@
+server {
+ listen myhost default_server;
+ listen otherhost default_server;
+ server_name "www.example.org";
+
+ location / {
+ root html;
+ index index.html index.htm;
+ }
+}
diff --git a/certbot-nginx/tests/testdata/etc_nginx/sites-enabled/example.com b/certbot-nginx/tests/testdata/etc_nginx/sites-enabled/example.com
new file mode 100644
index 000000000..fd9117188
--- /dev/null
+++ b/certbot-nginx/tests/testdata/etc_nginx/sites-enabled/example.com
@@ -0,0 +1,6 @@
+server {
+ listen 69.50.225.155:9000;
+ listen 127.0.0.1;
+ server_name .example.com;
+ server_name example.*;
+}
diff --git a/certbot-nginx/tests/testdata/etc_nginx/sites-enabled/globalssl.com b/certbot-nginx/tests/testdata/etc_nginx/sites-enabled/globalssl.com
new file mode 100644
index 000000000..969447d6e
--- /dev/null
+++ b/certbot-nginx/tests/testdata/etc_nginx/sites-enabled/globalssl.com
@@ -0,0 +1,9 @@
+server {
+ server_name globalssl.com;
+ listen 4.8.2.6:57;
+}
+
+server {
+ server_name globalsslsetssl.com;
+ listen 4.8.2.6:57 ssl;
+}
diff --git a/certbot-nginx/tests/testdata/etc_nginx/sites-enabled/headers.com b/certbot-nginx/tests/testdata/etc_nginx/sites-enabled/headers.com
new file mode 100644
index 000000000..6c032928c
--- /dev/null
+++ b/certbot-nginx/tests/testdata/etc_nginx/sites-enabled/headers.com
@@ -0,0 +1,4 @@
+server {
+ server_name headers.com;
+ add_header X-Content-Type-Options nosniff;
+}
diff --git a/certbot-nginx/tests/testdata/etc_nginx/sites-enabled/ipv6.com b/certbot-nginx/tests/testdata/etc_nginx/sites-enabled/ipv6.com
new file mode 100644
index 000000000..7a7744b92
--- /dev/null
+++ b/certbot-nginx/tests/testdata/etc_nginx/sites-enabled/ipv6.com
@@ -0,0 +1,5 @@
+server {
+ listen 80;
+ listen [::]:80;
+ server_name ipv6.com;
+}
diff --git a/certbot-nginx/tests/testdata/etc_nginx/sites-enabled/ipv6ssl.com b/certbot-nginx/tests/testdata/etc_nginx/sites-enabled/ipv6ssl.com
new file mode 100644
index 000000000..875a9ee1b
--- /dev/null
+++ b/certbot-nginx/tests/testdata/etc_nginx/sites-enabled/ipv6ssl.com
@@ -0,0 +1,7 @@
+server {
+ listen 443 ssl;
+ listen [::]:443 ssl ipv6only=on;
+ listen 5001 ssl;
+ listen [::]:5001 ssl ipv6only=on;
+ server_name ipv6ssl.com;
+}
diff --git a/certbot-nginx/tests/testdata/etc_nginx/sites-enabled/migration.com b/certbot-nginx/tests/testdata/etc_nginx/sites-enabled/migration.com
new file mode 100644
index 000000000..17bc6d0c3
--- /dev/null
+++ b/certbot-nginx/tests/testdata/etc_nginx/sites-enabled/migration.com
@@ -0,0 +1,19 @@
+server {
+ server_name migration.com;
+ server_name summer.com;
+}
+
+server {
+ listen 443 ssl;
+ server_name migration.com;
+ server_name geese.com;
+
+ ssl_certificate cert.pem;
+ ssl_certificate_key cert.key;
+
+ ssl_session_cache shared:SSL:1m;
+ ssl_session_timeout 5m;
+
+ ssl_ciphers HIGH:!aNULL:!MD5;
+ ssl_prefer_server_ciphers on;
+}
diff --git a/certbot-nginx/tests/testdata/etc_nginx/sites-enabled/sslon.com b/certbot-nginx/tests/testdata/etc_nginx/sites-enabled/sslon.com
new file mode 100644
index 000000000..b93e6ba2d
--- /dev/null
+++ b/certbot-nginx/tests/testdata/etc_nginx/sites-enabled/sslon.com
@@ -0,0 +1,6 @@
+server {
+ server_name sslon.com;
+ ssl on;
+ ssl_certificate snakeoil.cert;
+ ssl_certificate_key snakeoil.key;
+}
diff --git a/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/fastcgi_params b/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/fastcgi_params
new file mode 100644
index 000000000..4ee14e98d
--- /dev/null
+++ b/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/fastcgi_params
@@ -0,0 +1,25 @@
+fastcgi_param QUERY_STRING $query_string;
+fastcgi_param REQUEST_METHOD $request_method;
+fastcgi_param CONTENT_TYPE $content_type;
+fastcgi_param CONTENT_LENGTH $content_length;
+
+fastcgi_param SCRIPT_FILENAME $request_filename;
+fastcgi_param SCRIPT_NAME $fastcgi_script_name;
+fastcgi_param REQUEST_URI $request_uri;
+fastcgi_param DOCUMENT_URI $document_uri;
+fastcgi_param DOCUMENT_ROOT $document_root;
+fastcgi_param SERVER_PROTOCOL $server_protocol;
+
+fastcgi_param GATEWAY_INTERFACE CGI/1.1;
+fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;
+
+fastcgi_param REMOTE_ADDR $remote_addr;
+fastcgi_param REMOTE_PORT $remote_port;
+fastcgi_param SERVER_ADDR $server_addr;
+fastcgi_param SERVER_PORT $server_port;
+fastcgi_param SERVER_NAME $server_name;
+
+fastcgi_param HTTPS $https if_not_empty;
+
+# PHP only, required if PHP was built with --enable-force-cgi-redirect
+fastcgi_param REDIRECT_STATUS 200;
diff --git a/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/koi-utf b/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/koi-utf
new file mode 100644
index 000000000..1edb9474f
--- /dev/null
+++ b/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/koi-utf
@@ -0,0 +1,108 @@
+# This map is not a full koi8-r <> utf8 map: it does not contain
+# box-drawing and some other characters. Besides this map contains
+# several koi8-u and Byelorussian letters which are not in koi8-r.
+# If you need a full and standard map, use contrib/unicode2nginx/koi-utf
+# map instead.
+
+charset_map koi8-r utf-8 {
+
+ 80 E282AC; # euro
+
+ 95 E280A2; # bullet
+
+ 9A C2A0; # &nbsp;
+
+ 9E C2B7; # &middot;
+
+ A3 D191; # small yo
+ A4 D194; # small Ukrainian ye
+
+ A6 D196; # small Ukrainian i
+ A7 D197; # small Ukrainian yi
+
+ AD D291; # small Ukrainian soft g
+ AE D19E; # small Byelorussian short u
+
+ B0 C2B0; # &deg;
+
+ B3 D081; # capital YO
+ B4 D084; # capital Ukrainian YE
+
+ B6 D086; # capital Ukrainian I
+ B7 D087; # capital Ukrainian YI
+
+ B9 E28496; # numero sign
+
+ BD D290; # capital Ukrainian soft G
+ BE D18E; # capital Byelorussian short U
+
+ BF C2A9; # (C)
+
+ C0 D18E; # small yu
+ C1 D0B0; # small a
+ C2 D0B1; # small b
+ C3 D186; # small ts
+ C4 D0B4; # small d
+ C5 D0B5; # small ye
+ C6 D184; # small f
+ C7 D0B3; # small g
+ C8 D185; # small kh
+ C9 D0B8; # small i
+ CA D0B9; # small j
+ CB D0BA; # small k
+ CC D0BB; # small l
+ CD D0BC; # small m
+ CE D0BD; # small n
+ CF D0BE; # small o
+
+ D0 D0BF; # small p
+ D1 D18F; # small ya
+ D2 D180; # small r
+ D3 D181; # small s
+ D4 D182; # small t
+ D5 D183; # small u
+ D6 D0B6; # small zh
+ D7 D0B2; # small v
+ D8 D18C; # small soft sign
+ D9 D18B; # small y
+ DA D0B7; # small z
+ DB D188; # small sh
+ DC D18D; # small e
+ DD D189; # small shch
+ DE D187; # small ch
+ DF D18A; # small hard sign
+
+ E0 D0AE; # capital YU
+ E1 D090; # capital A
+ E2 D091; # capital B
+ E3 D0A6; # capital TS
+ E4 D094; # capital D
+ E5 D095; # capital YE
+ E6 D0A4; # capital F
+ E7 D093; # capital G
+ E8 D0A5; # capital KH
+ E9 D098; # capital I
+ EA D099; # capital J
+ EB D09A; # capital K
+ EC D09B; # capital L
+ ED D09C; # capital M
+ EE D09D; # capital N
+ EF D09E; # capital O
+
+ F0 D09F; # capital P
+ F1 D0AF; # capital YA
+ F2 D0A0; # capital R
+ F3 D0A1; # capital S
+ F4 D0A2; # capital T
+ F5 D0A3; # capital U
+ F6 D096; # capital ZH
+ F7 D092; # capital V
+ F8 D0AC; # capital soft sign
+ F9 D0AB; # capital Y
+ FA D097; # capital Z
+ FB D0A8; # capital SH
+ FC D0AD; # capital E
+ FD D0A9; # capital SHCH
+ FE D0A7; # capital CH
+ FF D0AA; # capital hard sign
+}
diff --git a/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/koi-win b/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/koi-win
new file mode 100644
index 000000000..c6930fc4f
--- /dev/null
+++ b/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/koi-win
@@ -0,0 +1,102 @@
+charset_map koi8-r windows-1251 {
+
+ 80 88; # euro
+
+ 95 95; # bullet
+
+ 9A A0; # &nbsp;
+
+ 9E B7; # &middot;
+
+ A3 B8; # small yo
+ A4 BA; # small Ukrainian ye
+
+ A6 B3; # small Ukrainian i
+ A7 BF; # small Ukrainian yi
+
+ AD B4; # small Ukrainian soft g
+ AE A2; # small Byelorussian short u
+
+ B0 B0; # &deg;
+
+ B3 A8; # capital YO
+ B4 AA; # capital Ukrainian YE
+
+ B6 B2; # capital Ukrainian I
+ B7 AF; # capital Ukrainian YI
+
+ B9 B9; # numero sign
+
+ BD A5; # capital Ukrainian soft G
+ BE A1; # capital Byelorussian short U
+
+ BF A9; # (C)
+
+ C0 FE; # small yu
+ C1 E0; # small a
+ C2 E1; # small b
+ C3 F6; # small ts
+ C4 E4; # small d
+ C5 E5; # small ye
+ C6 F4; # small f
+ C7 E3; # small g
+ C8 F5; # small kh
+ C9 E8; # small i
+ CA E9; # small j
+ CB EA; # small k
+ CC EB; # small l
+ CD EC; # small m
+ CE ED; # small n
+ CF EE; # small o
+
+ D0 EF; # small p
+ D1 FF; # small ya
+ D2 F0; # small r
+ D3 F1; # small s
+ D4 F2; # small t
+ D5 F3; # small u
+ D6 E6; # small zh
+ D7 E2; # small v
+ D8 FC; # small soft sign
+ D9 FB; # small y
+ DA E7; # small z
+ DB F8; # small sh
+ DC FD; # small e
+ DD F9; # small shch
+ DE F7; # small ch
+ DF FA; # small hard sign
+
+ E0 DE; # capital YU
+ E1 C0; # capital A
+ E2 C1; # capital B
+ E3 D6; # capital TS
+ E4 C4; # capital D
+ E5 C5; # capital YE
+ E6 D4; # capital F
+ E7 C3; # capital G
+ E8 D5; # capital KH
+ E9 C8; # capital I
+ EA C9; # capital J
+ EB CA; # capital K
+ EC CB; # capital L
+ ED CC; # capital M
+ EE CD; # capital N
+ EF CE; # capital O
+
+ F0 CF; # capital P
+ F1 DF; # capital YA
+ F2 D0; # capital R
+ F3 D1; # capital S
+ F4 D2; # capital T
+ F5 D3; # capital U
+ F6 C6; # capital ZH
+ F7 C2; # capital V
+ F8 DC; # capital soft sign
+ F9 DB; # capital Y
+ FA C7; # capital Z
+ FB D8; # capital SH
+ FC DD; # capital E
+ FD D9; # capital SHCH
+ FE D7; # capital CH
+ FF DA; # capital hard sign
+}
diff --git a/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/mime.types b/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/mime.types
new file mode 100644
index 000000000..fcce4a58d
--- /dev/null
+++ b/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/mime.types
@@ -0,0 +1,79 @@
+types {
+ text/html html htm shtml;
+ text/css css;
+ text/xml xml rss;
+ image/gif gif;
+ image/jpeg jpeg jpg;
+ application/x-javascript js;
+ application/atom+xml atom;
+
+ text/mathml mml;
+ text/plain txt;
+ text/vnd.sun.j2me.app-descriptor jad;
+ text/vnd.wap.wml wml;
+ text/x-component htc;
+
+ image/png png;
+ image/tiff tif tiff;
+ image/vnd.wap.wbmp wbmp;
+ image/x-icon ico;
+ image/x-jng jng;
+ image/x-ms-bmp bmp;
+ image/svg+xml svg svgz;
+
+ application/java-archive jar war ear;
+ application/json json;
+ application/mac-binhex40 hqx;
+ application/msword doc;
+ application/pdf pdf;
+ application/postscript ps eps ai;
+ application/rtf rtf;
+ application/vnd.ms-excel xls;
+ application/vnd.ms-powerpoint ppt;
+ application/vnd.wap.wmlc wmlc;
+ application/vnd.google-earth.kml+xml kml;
+ application/vnd.google-earth.kmz kmz;
+ application/x-7z-compressed 7z;
+ application/x-cocoa cco;
+ application/x-java-archive-diff jardiff;
+ application/x-java-jnlp-file jnlp;
+ application/x-makeself run;
+ application/x-perl pl pm;
+ application/x-pilot prc pdb;
+ application/x-rar-compressed rar;
+ application/x-redhat-package-manager rpm;
+ application/x-sea sea;
+ application/x-shockwave-flash swf;
+ application/x-stuffit sit;
+ application/x-tcl tcl tk;
+ application/x-x509-ca-cert der pem crt;
+ application/x-xpinstall xpi;
+ application/xhtml+xml xhtml;
+ application/zip zip;
+
+ application/octet-stream bin exe dll;
+ application/octet-stream deb;
+ application/octet-stream dmg;
+ application/octet-stream eot;
+ application/octet-stream iso img;
+ application/octet-stream msi msp msm;
+ application/ogg ogx;
+
+ audio/midi mid midi kar;
+ audio/mpeg mpga mpega mp2 mp3 m4a;
+ audio/ogg oga ogg spx;
+ audio/x-realaudio ra;
+ audio/webm weba;
+
+ video/3gpp 3gpp 3gp;
+ video/mp4 mp4;
+ video/mpeg mpeg mpg mpe;
+ video/ogg ogv;
+ video/quicktime mov;
+ video/webm webm;
+ video/x-flv flv;
+ video/x-mng mng;
+ video/x-ms-asf asx asf;
+ video/x-ms-wmv wmv;
+ video/x-msvideo avi;
+}
diff --git a/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/naxsi-ui.conf.1.4.1 b/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/naxsi-ui.conf.1.4.1
new file mode 100644
index 000000000..f4eb9d49d
--- /dev/null
+++ b/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/naxsi-ui.conf.1.4.1
@@ -0,0 +1,16 @@
+[nx_extract]
+username = naxsi_web
+password = test
+port = 8081
+rules_path = /etc/nginx/naxsi_core.rules
+
+[nx_intercept]
+port = 8080
+
+[sql]
+dbtype = sqlite
+username = root
+password =
+hostname = 127.0.0.1
+dbname = naxsi_sig
+
diff --git a/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/naxsi.rules b/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/naxsi.rules
new file mode 100644
index 000000000..fec21ea4f
--- /dev/null
+++ b/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/naxsi.rules
@@ -0,0 +1,13 @@
+# Sample rules file for default vhost.
+
+LearningMode;
+SecRulesEnabled;
+#SecRulesDisabled;
+DeniedUrl "/RequestDenied";
+
+## check rules
+CheckRule "$SQL >= 8" BLOCK;
+CheckRule "$RFI >= 8" BLOCK;
+CheckRule "$TRAVERSAL >= 4" BLOCK;
+CheckRule "$EVADE >= 4" BLOCK;
+CheckRule "$XSS >= 8" BLOCK;
diff --git a/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/naxsi_core.rules b/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/naxsi_core.rules
new file mode 100644
index 000000000..9826e02cb
--- /dev/null
+++ b/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/naxsi_core.rules
@@ -0,0 +1,75 @@
+##################################
+## INTERNAL RULES IDS:1-10 ##
+##################################
+#weird_request : 1
+#big_body : 2
+#no_content_type : 3
+
+#MainRule "str:yesone" "msg:foobar test pattern" "mz:ARGS" "s:$SQL:42" id:1999;
+
+##################################
+## SQL Injections IDs:1000-1099 ##
+##################################
+MainRule "rx:select|union|update|delete|insert|table|from|ascii|hex|unhex" "msg:sql keywords" "mz:BODY|URL|ARGS|$HEADERS_VAR:Cookie" "s:$SQL:4" id:1000;
+MainRule "str:\"" "msg:double quote" "mz:BODY|URL|ARGS|$HEADERS_VAR:Cookie" "s:$SQL:4" id:1001;
+MainRule "str:0x" "msg:0x, possible hex encoding" "mz:BODY|URL|ARGS|$HEADERS_VAR:Cookie" "s:$SQL:2" id:1002;
+## Hardcore rules
+MainRule "str:/*" "msg:mysql comment (/*)" "mz:BODY|URL|ARGS|$HEADERS_VAR:Cookie" "s:$SQL:8" id:1003;
+MainRule "str:*/" "msg:mysql comment (*/)" "mz:BODY|URL|ARGS|$HEADERS_VAR:Cookie" "s:$SQL:8" id:1004;
+MainRule "str:|" "msg:mysql keyword (|)" "mz:BODY|URL|ARGS|$HEADERS_VAR:Cookie" "s:$SQL:8" id:1005;
+MainRule "rx:&&" "msg:mysql keyword (&&)" "mz:BODY|URL|ARGS|$HEADERS_VAR:Cookie" "s:$SQL:8" id:1006;
+## end of hardcore rules
+MainRule "str:--" "msg:mysql comment (--)" "mz:BODY|URL|ARGS|$HEADERS_VAR:Cookie" "s:$SQL:4" id:1007;
+MainRule "str:;" "msg:; in stuff" "mz:BODY|URL|ARGS" "s:$SQL:4" id:1008;
+MainRule "str:=" "msg:equal in var, probable sql/xss" "mz:ARGS|BODY" "s:$SQL:2" id:1009;
+MainRule "str:(" "msg:parenthesis, probable sql/xss" "mz:ARGS|URL|BODY|$HEADERS_VAR:Cookie" "s:$SQL:4" id:1010;
+MainRule "str:)" "msg:parenthesis, probable sql/xss" "mz:ARGS|URL|BODY|$HEADERS_VAR:Cookie" "s:$SQL:4" id:1011;
+MainRule "str:'" "msg:simple quote" "mz:ARGS|BODY|URL|$HEADERS_VAR:Cookie" "s:$SQL:4" id:1013;
+MainRule "str:\"" "msg:double quote" "mz:ARGS|BODY|URL|$HEADERS_VAR:Cookie" "s:$SQL:4" id:1014;
+MainRule "str:," "msg:, in stuff" "mz:BODY|URL|ARGS|$HEADERS_VAR:Cookie" "s:$SQL:4" id:1015;
+MainRule "str:#" "msg:mysql comment (#)" "mz:BODY|URL|ARGS|$HEADERS_VAR:Cookie" "s:$SQL:4" id:1016;
+
+###############################
+## OBVIOUS RFI IDs:1100-1199 ##
+###############################
+MainRule "str:http://" "msg:html comment tag" "mz:ARGS|BODY|$HEADERS_VAR:Cookie" "s:$RFI:8" id:1100;
+MainRule "str:https://" "msg:html comment tag" "mz:ARGS|BODY|$HEADERS_VAR:Cookie" "s:$RFI:8" id:1101;
+MainRule "str:ftp://" "msg:html comment tag" "mz:ARGS|BODY|$HEADERS_VAR:Cookie" "s:$RFI:8" id:1102;
+MainRule "str:php://" "msg:html comment tag" "mz:ARGS|BODY|$HEADERS_VAR:Cookie" "s:$RFI:8" id:1103;
+
+#######################################
+## Directory traversal IDs:1200-1299 ##
+#######################################
+MainRule "str:.." "msg:html comment tag" "mz:ARGS|URL|BODY|$HEADERS_VAR:Cookie" "s:$TRAVERSAL:4" id:1200;
+MainRule "str:/etc/passwd" "msg:html comment tag" "mz:ARGS|URL|BODY|$HEADERS_VAR:Cookie" "s:$TRAVERSAL:4" id:1202;
+MainRule "str:c:\\" "msg:html comment tag" "mz:ARGS|URL|BODY|$HEADERS_VAR:Cookie" "s:$TRAVERSAL:4" id:1203;
+MainRule "str:cmd.exe" "msg:html comment tag" "mz:ARGS|URL|BODY|$HEADERS_VAR:Cookie" "s:$TRAVERSAL:4" id:1204;
+MainRule "str:\\" "msg:html comment tag" "mz:ARGS|URL|BODY|$HEADERS_VAR:Cookie" "s:$TRAVERSAL:4" id:1205;
+#MainRule "str:/" "msg:slash in args" "mz:ARGS|BODY|$HEADERS_VAR:Cookie" "s:$TRAVERSAL:2" id:1206;
+########################################
+## Cross Site Scripting IDs:1300-1399 ##
+########################################
+MainRule "str:<" "msg:html open tag" "mz:ARGS|URL|BODY|$HEADERS_VAR:Cookie" "s:$XSS:8" id:1302;
+MainRule "str:>" "msg:html close tag" "mz:ARGS|URL|BODY|$HEADERS_VAR:Cookie" "s:$XSS:8" id:1303;
+MainRule "str:'" "msg:simple quote" "mz:ARGS|URL|BODY|$HEADERS_VAR:Cookie" "s:$XSS:8" id:1306;
+MainRule "str:\"" "msg:double quote" "mz:ARGS|URL|BODY|$HEADERS_VAR:Cookie" "s:$XSS:8" id:1307;
+MainRule "str:(" "msg:parenthesis" "mz:ARGS|URL|BODY|$HEADERS_VAR:Cookie" "s:$XSS:8" id:1308;
+MainRule "str:)" "msg:parenthesis" "mz:ARGS|URL|BODY|$HEADERS_VAR:Cookie" "s:$XSS:8" id:1309;
+MainRule "str:[" "msg:html close comment tag" "mz:BODY|URL|ARGS|$HEADERS_VAR:Cookie" "s:$XSS:4" id:1310;
+MainRule "str:]" "msg:html close comment tag" "mz:BODY|URL|ARGS|$HEADERS_VAR:Cookie" "s:$XSS:4" id:1311;
+MainRule "str:~" "msg:html close comment tag" "mz:BODY|URL|ARGS|$HEADERS_VAR:Cookie" "s:$XSS:4" id:1312;
+MainRule "str:;" "msg:semi coma" "mz:ARGS|URL|BODY" "s:$XSS:8" id:1313;
+MainRule "str:`" "msg:grave accent !" "mz:ARGS|URL|BODY|$HEADERS_VAR:Cookie" "s:$XSS:8" id:1314;
+MainRule "rx:%[2|3]." "msg:double encoding !" "mz:ARGS|URL|BODY|$HEADERS_VAR:Cookie" "s:$XSS:8" id:1315;
+
+####################################
+## Evading tricks IDs: 1400-1500 ##
+####################################
+MainRule "str:&#" "msg: utf7/8 encoding" "mz:ARGS|BODY|URL|$HEADERS_VAR:Cookie" "s:$EVADE:4" id:1400;
+MainRule "str:%U" "msg: M$ encoding" "mz:ARGS|BODY|URL|$HEADERS_VAR:Cookie" "s:$EVADE:4" id:1401;
+MainRule negative "rx:multipart/form-data|application/x-www-form-urlencoded" "msg:Content is neither multipart/x-www-form.." "mz:$HEADERS_VAR:Content-type" "s:$EVADE:4" id:1402;
+
+#############################
+## File uploads: 1500-1600 ##
+#############################
+MainRule "rx:.ph*|.asp*" "msg:asp/php file upload!" "mz:FILE_EXT" "s:$UPLOAD:8" id:1500;
diff --git a/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/nginx.conf b/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/nginx.conf
new file mode 100644
index 000000000..52219b940
--- /dev/null
+++ b/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/nginx.conf
@@ -0,0 +1,95 @@
+user www-data;
+worker_processes 4;
+pid /run/nginx.pid;
+
+events {
+ worker_connections 768;
+ # multi_accept on;
+}
+
+http {
+
+ ##
+ # Basic Settings
+ ##
+
+ sendfile on;
+ tcp_nopush on;
+ tcp_nodelay on;
+ keepalive_timeout 65;
+ types_hash_max_size 2048;
+ # server_tokens off;
+
+ # server_names_hash_bucket_size 64;
+ # server_name_in_redirect off;
+
+ include /etc/nginx/mime.types;
+ default_type application/octet-stream;
+
+ ##
+ # Logging Settings
+ ##
+
+ access_log /var/log/nginx/access.log;
+ error_log /var/log/nginx/error.log;
+
+ ##
+ # Gzip Settings
+ ##
+
+ gzip on;
+ gzip_disable "msie6";
+
+ # gzip_vary on;
+ # gzip_proxied any;
+ # gzip_comp_level 6;
+ # gzip_buffers 16 8k;
+ # gzip_http_version 1.1;
+ # gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;
+
+ ##
+ # nginx-naxsi config
+ ##
+ # Uncomment it if you installed nginx-naxsi
+ ##
+
+ #include /etc/nginx/naxsi_core.rules;
+
+ ##
+ # nginx-passenger config
+ ##
+ # Uncomment it if you installed nginx-passenger
+ ##
+
+ #passenger_root /usr;
+ #passenger_ruby /usr/bin/ruby;
+
+ ##
+ # Virtual Host Configs
+ ##
+
+ include /etc/nginx/conf.d/*.conf;
+ include /etc/nginx/sites-enabled/*;
+}
+
+
+#mail {
+# # See sample authentication script at:
+# # http://wiki.nginx.org/ImapAuthenticateWithApachePhpScript
+#
+# # auth_http localhost/auth.php;
+# # pop3_capabilities "TOP" "USER";
+# # imap_capabilities "IMAP4rev1" "UIDPLUS";
+#
+# server {
+# listen localhost:110;
+# protocol pop3;
+# proxy on;
+# }
+#
+# server {
+# listen localhost:143;
+# protocol imap;
+# proxy on;
+# }
+#}
diff --git a/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/proxy_params b/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/proxy_params
new file mode 100644
index 000000000..df75bc5d7
--- /dev/null
+++ b/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/proxy_params
@@ -0,0 +1,4 @@
+proxy_set_header Host $http_host;
+proxy_set_header X-Real-IP $remote_addr;
+proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
+proxy_set_header X-Forwarded-Proto $scheme;
diff --git a/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/scgi_params b/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/scgi_params
new file mode 100644
index 000000000..76e858628
--- /dev/null
+++ b/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/scgi_params
@@ -0,0 +1,14 @@
+scgi_param REQUEST_METHOD $request_method;
+scgi_param REQUEST_URI $request_uri;
+scgi_param QUERY_STRING $query_string;
+scgi_param CONTENT_TYPE $content_type;
+
+scgi_param DOCUMENT_URI $document_uri;
+scgi_param DOCUMENT_ROOT $document_root;
+scgi_param SCGI 1;
+scgi_param SERVER_PROTOCOL $server_protocol;
+
+scgi_param REMOTE_ADDR $remote_addr;
+scgi_param REMOTE_PORT $remote_port;
+scgi_param SERVER_PORT $server_port;
+scgi_param SERVER_NAME $server_name;
diff --git a/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/sites-available/default b/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/sites-available/default
new file mode 100644
index 000000000..5d8f3ac15
--- /dev/null
+++ b/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/sites-available/default
@@ -0,0 +1,112 @@
+# You may add here your
+# server {
+# ...
+# }
+# statements for each of your virtual hosts to this file
+
+##
+# You should look at the following URL's in order to grasp a solid understanding
+# of Nginx configuration files in order to fully unleash the power of Nginx.
+# http://wiki.nginx.org/Pitfalls
+# http://wiki.nginx.org/QuickStart
+# http://wiki.nginx.org/Configuration
+#
+# Generally, you will want to move this file somewhere, and start with a clean
+# file but keep this around for reference. Or just disable in sites-enabled.
+#
+# Please see /usr/share/doc/nginx-doc/examples/ for more detailed examples.
+##
+
+server {
+ listen 80 default_server;
+ listen [::]:80 default_server ipv6only=on;
+
+ root /usr/share/nginx/html;
+ index index.html index.htm;
+
+ # Make site accessible from http://localhost/
+ server_name localhost;
+
+ location / {
+ # First attempt to serve request as file, then
+ # as directory, then fall back to displaying a 404.
+ try_files $uri $uri/ =404;
+ # Uncomment to enable naxsi on this location
+ # include /etc/nginx/naxsi.rules
+ }
+
+ # Only for nginx-naxsi used with nginx-naxsi-ui : process denied requests
+ #location /RequestDenied {
+ # proxy_pass http://127.0.0.1:8080;
+ #}
+
+ #error_page 404 /404.html;
+
+ # redirect server error pages to the static page /50x.html
+ #
+ #error_page 500 502 503 504 /50x.html;
+ #location = /50x.html {
+ # root /usr/share/nginx/html;
+ #}
+
+ # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
+ #
+ #location ~ \.php$ {
+ # fastcgi_split_path_info ^(.+\.php)(/.+)$;
+ # # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
+ #
+ # # With php5-cgi alone:
+ # fastcgi_pass 127.0.0.1:9000;
+ # # With php5-fpm:
+ # fastcgi_pass unix:/var/run/php5-fpm.sock;
+ # fastcgi_index index.php;
+ # include fastcgi_params;
+ #}
+
+ # deny access to .htaccess files, if Apache's document root
+ # concurs with nginx's one
+ #
+ #location ~ /\.ht {
+ # deny all;
+ #}
+}
+
+
+# another virtual host using mix of IP-, name-, and port-based configuration
+#
+#server {
+# listen 8000;
+# listen somename:8080;
+# server_name somename alias another.alias;
+# root html;
+# index index.html index.htm;
+#
+# location / {
+# try_files $uri $uri/ =404;
+# }
+#}
+
+
+# HTTPS server
+#
+#server {
+# listen 443;
+# server_name localhost;
+#
+# root html;
+# index index.html index.htm;
+#
+# ssl on;
+# ssl_certificate cert.pem;
+# ssl_certificate_key cert.key;
+#
+# ssl_session_timeout 5m;
+#
+# ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
+# ssl_ciphers "HIGH:!aNULL:!MD5 or HIGH:!aNULL:!MD5:!3DES";
+# ssl_prefer_server_ciphers on;
+#
+# location / {
+# try_files $uri $uri/ =404;
+# }
+#}
diff --git a/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/sites-enabled/default b/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/sites-enabled/default
new file mode 120000
index 000000000..6d9ba3371
--- /dev/null
+++ b/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/sites-enabled/default
@@ -0,0 +1 @@
+../sites-available/default \ No newline at end of file
diff --git a/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/uwsgi_params b/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/uwsgi_params
new file mode 100644
index 000000000..3f72dbf0e
--- /dev/null
+++ b/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/uwsgi_params
@@ -0,0 +1,15 @@
+uwsgi_param QUERY_STRING $query_string;
+uwsgi_param REQUEST_METHOD $request_method;
+uwsgi_param CONTENT_TYPE $content_type;
+uwsgi_param CONTENT_LENGTH $content_length;
+
+uwsgi_param REQUEST_URI $request_uri;
+uwsgi_param PATH_INFO $document_uri;
+uwsgi_param DOCUMENT_ROOT $document_root;
+uwsgi_param SERVER_PROTOCOL $server_protocol;
+uwsgi_param UWSGI_SCHEME $scheme;
+
+uwsgi_param REMOTE_ADDR $remote_addr;
+uwsgi_param REMOTE_PORT $remote_port;
+uwsgi_param SERVER_PORT $server_port;
+uwsgi_param SERVER_NAME $server_name;
diff --git a/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/win-utf b/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/win-utf
new file mode 100644
index 000000000..cd2885292
--- /dev/null
+++ b/certbot-nginx/tests/testdata/etc_nginx/ubuntu_nginx_1_4_6/default_vhost/nginx/win-utf
@@ -0,0 +1,125 @@
+# This map is not a full windows-1251 <> utf8 map: it does not
+# contain Serbian and Macedonian letters. If you need a full map,
+# use contrib/unicode2nginx/win-utf map instead.
+
+charset_map windows-1251 utf-8 {
+
+ 82 E2809A; # single low-9 quotation mark
+
+ 84 E2809E; # double low-9 quotation mark
+ 85 E280A6; # ellipsis
+ 86 E280A0; # dagger
+ 87 E280A1; # double dagger
+ 88 E282AC; # euro
+ 89 E280B0; # per mille
+
+ 91 E28098; # left single quotation mark
+ 92 E28099; # right single quotation mark
+ 93 E2809C; # left double quotation mark
+ 94 E2809D; # right double quotation mark
+ 95 E280A2; # bullet
+ 96 E28093; # en dash
+ 97 E28094; # em dash
+
+ 99 E284A2; # trade mark sign
+
+ A0 C2A0; # &nbsp;
+ A1 D18E; # capital Byelorussian short U
+ A2 D19E; # small Byelorussian short u
+
+ A4 C2A4; # currency sign
+ A5 D290; # capital Ukrainian soft G
+ A6 C2A6; # borken bar
+ A7 C2A7; # section sign
+ A8 D081; # capital YO
+ A9 C2A9; # (C)
+ AA D084; # capital Ukrainian YE
+ AB C2AB; # left-pointing double angle quotation mark
+ AC C2AC; # not sign
+ AD C2AD; # soft hyphen
+ AE C2AE; # (R)
+ AF D087; # capital Ukrainian YI
+
+ B0 C2B0; # &deg;
+ B1 C2B1; # plus-minus sign
+ B2 D086; # capital Ukrainian I
+ B3 D196; # small Ukrainian i
+ B4 D291; # small Ukrainian soft g
+ B5 C2B5; # micro sign
+ B6 C2B6; # pilcrow sign
+ B7 C2B7; # &middot;
+ B8 D191; # small yo
+ B9 E28496; # numero sign
+ BA D194; # small Ukrainian ye
+ BB C2BB; # right-pointing double angle quotation mark
+
+ BF D197; # small Ukrainian yi
+
+ C0 D090; # capital A
+ C1 D091; # capital B
+ C2 D092; # capital V
+ C3 D093; # capital G
+ C4 D094; # capital D
+ C5 D095; # capital YE
+ C6 D096; # capital ZH
+ C7 D097; # capital Z
+ C8 D098; # capital I
+ C9 D099; # capital J
+ CA D09A; # capital K
+ CB D09B; # capital L
+ CC D09C; # capital M
+ CD D09D; # capital N
+ CE D09E; # capital O
+ CF D09F; # capital P
+
+ D0 D0A0; # capital R
+ D1 D0A1; # capital S
+ D2 D0A2; # capital T
+ D3 D0A3; # capital U
+ D4 D0A4; # capital F
+ D5 D0A5; # capital KH
+ D6 D0A6; # capital TS
+ D7 D0A7; # capital CH
+ D8 D0A8; # capital SH
+ D9 D0A9; # capital SHCH
+ DA D0AA; # capital hard sign
+ DB D0AB; # capital Y
+ DC D0AC; # capital soft sign
+ DD D0AD; # capital E
+ DE D0AE; # capital YU
+ DF D0AF; # capital YA
+
+ E0 D0B0; # small a
+ E1 D0B1; # small b
+ E2 D0B2; # small v
+ E3 D0B3; # small g
+ E4 D0B4; # small d
+ E5 D0B5; # small ye
+ E6 D0B6; # small zh
+ E7 D0B7; # small z
+ E8 D0B8; # small i
+ E9 D0B9; # small j
+ EA D0BA; # small k
+ EB D0BB; # small l
+ EC D0BC; # small m
+ ED D0BD; # small n
+ EE D0BE; # small o
+ EF D0BF; # small p
+
+ F0 D180; # small r
+ F1 D181; # small s
+ F2 D182; # small t
+ F3 D183; # small u
+ F4 D184; # small f
+ F5 D185; # small kh
+ F6 D186; # small ts
+ F7 D187; # small ch
+ F8 D188; # small sh
+ F9 D189; # small shch
+ FA D18A; # small hard sign
+ FB D18B; # small y
+ FC D18C; # small soft sign
+ FD D18D; # small e
+ FE D18E; # small yu
+ FF D18F; # small ya
+}