Set up a custom domain
Back to home
On this page
Once your project is ready for production, replace the automatically generated domain with your own custom domain. Note that adding a domain disables the automatically generated URL for your Production environment only.
If you are an Enterprise or Elite customer and have a Grid or Dedicated Gen 3 project, you can customize the URLs for your non-production environments. Dedicated Gen 2 customers can also customize the domain for their Staging environment.
Before you begin
You need:
- A project that’s ready to go live
- A domain with access to its settings with the registrar
- A registrar that allows
CNAME
records or one of the alternatives on apex domains - Optional: The CLI installed locally
- If you are on a development plan, you need to upgrade your tier to a production plan.
If you are planning to use several subdomains of the same domain on different projects, see how to manage multiple subdomains before you add your domain to Platform.sh.
Optional: Change your plan to a production plan
If you are on a Development plan, you can’t add a domain. You need to upgrade your subscription to a production plan.
To upgrade your plan tier, you must be an organization owner or have the manage plans permission.
To upgrade your plan tier:
Run the following CLI command:
platform subscription:info plan standard
You can find more information on plan tiers.
1. Get the target for your project
You want to point your DNS record to the automatically generated URL. Your domain needs to point to that target for your site to go live.
For Dedicated plans, get the target for your project from your Platform.sh contact.
Get the target by running the following CLI command:
platform environment:info edge_hostname
2. Configure your DNS provider
Your DNS provider (usually your registrar) is where you manage your domain.
Most registrars offer similar functionalities regarding DNS configuration but use different terminology or configuration.
For example, some registrars require you to use an @
to create custom records on the apex domain, while others don’t.
Check your registrar’s documentation.
Note that depending on your registrar and the time to live (TTL) you set, it can take anywhere from 15 minutes to 72 hours for DNS changes to be taken into account.
To configure your domain name to point to your project:
- Consult your provider’s documentation to find out how to add or edit DNS records.
- Open your registrar’s domain management system.
- Set the TTL on your domain to the lowest possible value to minimize transition time.
- Add a
CNAME
record pointing from your domain to the target. Not all registrars allow these kinds of records. If yours doesn’t, see the alternatives. - Optional: If you have multiple domains you want to be served by the same app, add a
CNAME
record for each of them. That includes thewww
subdomain if you are using it in your routes configuration. - Set the TTL value back to its previous value.
If your domain is example.com
and you are using the www
subdomain, you have records like the following:
example.com
is aCNAME
/ANAME
/ALIAS
record pointing tomain-abcd123.abcdefgh1234567.eu.platformsh.site
.www.example.com
is aCNAME
record pointing tomain-abcd123.abcdefgh1234567.eu.platformsh.site
.
Both example.com
and www.example.com
point to the same target.
Redirects are handled by the router you configure.
3. Set your domain
Add a single domain to your project:
Run the following command:
platform domain:add YOUR_DOMAIN