Nginx and HTTPS

buyer-setup.sh configures Nginx and Certbot HTTPS. Tune upload body size and edge limits under deploy/nginx.

Nginx and HTTPS

buyer-setup.sh installs Nginx as the reverse proxy in front of the Node app and obtains HTTPS for the domain you entered (Certbot --nginx).

You usually do not hand-write a full Nginx config on day one.

What you get

  • Ports 80/443 for your domain
  • Proxy to the xfileultra systemd service
  • TLS certificate for the hostname used during setup
  • Edge rate / connection / download limits rendered for your plans (scripts/render-nginx-limit-rates.sh, configs under deploy/nginx/)

Upload body size at the edge defaults high (package snippet client_max_body_size — often 5120m via NGINX_CLIENT_MAX_BODY). If Nginx is lower than your in-app upload limit, large uploads die with 413 even when Settings look fine.

After install

  • Use https://YOUR-DOMAIN everywhere (wizard site URL should already be HTTPS).
  • Changing domains later means DNS + certificate + app public URL (.env / Settings) — not only the A record.

Common problems

Certificate invalid / wrong host

You opened the bare IP, a different hostname, or Certbot never finished for this name. Confirm DNS, then fix Certbot / Nginx for the domain you actually use.

HTTP works, HTTPS does not

Firewall blocking 443, or certificate step skipped because DNS failed earlier. Open 443/tcp and re-issue the cert.

413 upload too large

Raise Nginx client_max_body_size (see deploy/nginx) and reload Nginx. Raising only the script upload limit is not enough.

Related