NOTE: @pfaffman says: This page needs to be cleaned up. There is now a new ENV setting that will let you add more hostnames. In your app.yml
under your DISCOURSE_HOSTNAME
line (it can go many places but that one makes sense), add
DISCOURSE_HOSTNAME_ALIASES: domain.com,other.domain.com
and early reports suggest that you’ll get valid certs for those domains and that accessing https://domain.com
will properly redirect you to your DISCOURSE_HOSTNAME
without a certificate error.
If you do that and it works for you, you might add another “me too!” post to the bottom. If you feel comfortable, you could also edit this first post with the instructions that you think would be most helpful.
This is to address the problem where you get certificate errors with any redirects or CNAME DNS entries which point to your actual installed Discourse (sub)domain.
If you do not have https configured already (you do if you have done a standard install recently) see Setting up Let’s Encrypt as your first step.
There are three patterns that need to be replaced. Enter your (sub)domain (and any additional subdomains preceded by -d
) and then add the following to your app.yml
hooks section (towards the end of the file):
2025-04-23 @pfaffman changed the code because there’s a 3rd place it needs to be changed
after_ssl:
- replace:
filename: /etc/runit/1.d/letsencrypt
from: /-d =domain1= /
to: "-d =domain1= -d =domain2= "
global: true
This will allow you to have HTTPS configured for a second domain that will redirect to the correct one without certificate issues.
If you need to add multiple extra domains, you can enter something like this in the domain2
field: www.bananas.com -d forum.bananas.com
For example, if you want people who visit https://forum.example.com
to be redirected to your forum at https://community.example.com
without a certificate error, this is all you need.