Domains and HTTPS
Point a domain at the server, add it to a project and get a certificate without manual steps.
After this page the project opens at your domain over HTTPS. The agent on your server issues and renews the certificate through Let's Encrypt.
Before you start
If the server has no public address, read tunnel behind NAT: there the domain is connected with a CNAME record.
Steps
- At the domain registrar create an
Arecord with your server address. Forwwwcreate a secondArecord or aCNAMEto the main domain. If the server has IPv6, addAAAAtoo.
- Wait for the record to work. Check from any computer:
The command should return the server address. Usually it takes minutes, with some registrars up to several hours.
- In the panel open the project, the Settings tab, the Domains field. Separate several domains with spaces or commas. Tick “Redirect www to the apex domain” if
www.should lead to the main address. Click Save and deploy.


- The agent updates the proxy and issues a certificate. Usually it takes under a minute once DNS points at the server.
The same in nolay.toml:
Good to know
- Wildcards like
*.example.comare not supported: list each subdomain separately. - Domains are written in lowercase.
- HTTP redirects to HTTPS with code 308. Turn it off with
protection.https_redirect. - Certificates live on the server in
/var/lib/nolay/caddyand survive an agent reinstall. - Let's Encrypt limits failed attempts per domain per hour. If the certificate was not issued, fix DNS first and only then save again.
Check
The answer has HTTP/2 200 or your app's code. The certificate log on the server:
A successful issue is the line certificate obtained successfully.
Troubleshooting
Next
Set the secrets and tune domain protection with the [protection] fields.



