apt install libnginx-mod-stream user www-data; worker_processes auto; pid /run/nginx.pid; load_module modules/ngx_stream_module.so; events{ worker_connections 1024; } stream{ map $ssl_preread_server_name $name{ hostnames; .domain stream_domain; default localserver; } upstream strem_domain{ server x.x.x.x:443; } upstream localserver{ server 127.0.0.1:8443; } server{ listen 443; proxy_pass $name; ssl_preread on; } } http{ disable_symlinks off; include mime.types; default_type application/octet-stream; ssl_session_cache shared:SSL:10m; ssl_session_timeout 10m; server { listen 80; proxy_set_header Host $http_host; server_name .domain; location / { proxy_pass http://x.x.x.x:80; } } server { server_name domain; include content.conf; ssl_certificate fullchain.pem; ssl_certificate_key privkey.pem; } server { listen 80 default_server; location /.well-known/acme-challenge/ { root /var/www/acme; } return 301 https://$host$request_uri; } } rewrite ^(.+[^/])/$ $1; # remove trailing slash rewrite ^.*/([^/.]+)$ $uri/index.html; # add index.html if last part is not a filename rewrite ^(.+)/[^/]+$ $uri; # extrakt path to $1 set $uri_path $1; # set uri_path to $1