BoQsc Web Server Guide

A fully automated platform: drop a folder in domains/, get a live subdomain with a valid HTTPS certificate. No manual DNS, no manual SSL steps.

Subdomains

Every subdomain (like chat.boqsc.eu or forum.boqsc.eu) is just a folder under domains/ on the server. The server watches that folder:

  1. You create a folder (or ask the owner to create one for you).
  2. Within seconds the server discovers it and issues a Let's Encrypt certificate for yourname.boqsc.eu automatically.
  3. The subdomain appears in the toolbar and works over HTTPS immediately.

Content is static HTML/JS/CSS in the folder's static/ directory, plus optional Python API modules in api/. Everything runs from one server that stays up by itself (watchdog + auto-restart).

SSL & certificates

Certificates come from Let's Encrypt and are renewed automatically before they expire. The current default is HTTP-01: the server proves control of a subdomain by serving a challenge file on port 80, then installs the new certificate and reloads itself.

If you visit a subdomain that does not exist here, the server rejects the TLS handshake, so browsers show a plain “site can’t be reached” instead of a certificate error.

Services

The platform hosts a growing set of tools and games. Open the toolbar menus (Tools, Games, More) to browse them — chat, forum, paste, image editing, games, and more.

Get a subdomain

Want your own name.boqsc.eu? Use the Contact button in the toolbar and send a request. Everything here is public domain.

Wildcard certificates with DNS-01

For site owners: a wildcard certificate (*.boqsc.eu) is built in but disabled by default. It uses DNS-01 validation, and the main way to run it is manually — no DNS API needed:

  1. In webserver.ini, set [ACME] challenge = dns-01 and include_wildcard = true.
  2. Start the issuance. The server logs the exact TXT record to create — _acme-challenge.boqsc.eu with a one-time value — and waits for you.
  3. Add that TXT record in the DNS panel, wait for it to propagate, then press Enter to let validation run.
  4. Once the certificate is issued, delete the temporary TXT record (the server reminds you).

Automation via a DNS01Provider module (set_txt / clear_txt) is possible but needs DNS API credentials, which are hard to obtain here — so the manual flow stays the main path. For a safe trial, run with --staging (separate staging certificate directory, no impact on the live certificate).