All Collections
Technical documentation
Servers & Installation
Using Cloudflare DNS for your tracker (and getting free SSL)
Using Cloudflare DNS for your tracker (and getting free SSL)
Zeno avatar
Written by Zeno
Updated over a week ago

--- Watch the video above or read below ---

When setting up a new installation of FunnelFlux you will need a domain name and will need to point this to your server.

This requires a DNS management system.

There are many options here:

  1. Use the DNS offering from your domain registrar such as Namecheap

  2. Use the DNS offering from your hosting provider - some providers such as Vultr do provide their own DNS service

  3. Use your server as your DNS nameserver (not recommended)

  4. Use some other service such as Cloudflare, NS1, Route53, etc.

If you want to centralise your domain management to one place we highly recommend you use a platform like Cloudflare.

Do not use your server to host your DNS service, as is commonly suggested with managed servers running cPanel.

This puts too many critical services in one place -- generally you would use a separate service provider for your DNS management, servers, and emails so that they do not rely on each other.

So, let's get on to managing domains with Cloudflare


Step 1: Create a Cloudflare account

I'm sure you won't need much guidance here. Sign up to Cloudflare. You don't need pro, their free plan will do fine.


Step 2: Add your domain in Cloudflare

Add your domain name in Cloudflare. You can do so by clicking the "add site" button in the top right (or on first log in you might be presented with some wizard).

Enter your domain name and click scan. This will give you the option to import existing DNS entries, which you likely won't need to do.

You will then go through some steps where you confirm DNS details (just click next), select a plan (use free), and get to a page where it tells you to adjust your nameservers.

Note that this nameserver information will also be available on your site's DNS config page later and homepage. Don't panic if you forget these or skip this section.

For now, skip to the next section and it will take you to the dashboard for your site where you will see the pending nameserver change information:

Now, lets jump to step two and change our domain's nameservers


Step 3: Change a domain's nameservers in your registrar

Head over to your domain registrar (where you purchased the domain) and find your domain nameserver configuration.

You may need to consult the documentation from your registrar for "using custom nameservers". Here I will demonstrate using Namecheap

Go to your domains page and click manage for your domain.

Go down to the Nameservers section and choose custom DNS

Here, enter the nameservers provided by Cloudflare, in our case they are 

  • etta.ns.cloudflare.com

  • evan.ns.cloudflare.com

Make sure to remove any leading/trailing spaces here that may have arisen from copy/pasting, i.e. check formatting.

Click the ✔️to save and you are good to go.

Note that changing of Nameservers may take up to 24 hours. This process is generally fast if you have just purchased the domain and have not yet tried to load it in a browser. In any case be patient, these changes take time.

You can check the status using a tool such as DNSChecker -- enter your domain, change the record type to NS, and then search. You can also do this with A and CNAME records to check propagation when you make changes.

You can now go back to Cloudflare and click the Recheck Nameservers button. Do this every few hours until it is happy.


Step 4: Add DNS entries for your domain

Once you have configured your nameservers you can now get back to managing things in Cloudflare.

Pointing a domain or subdomain to your server is easy - you just need an A-record.

There are two main types of records you wil use -- A-records and CNAME records.

A-records point a domain name to an IP address. CNAME records alias a domain name to another domain name.

For example, an A-record might point mydomain.com  to 34.122.77.108

On the other hand a CNAME may point mydomain1.com  to mydomain2.com , or help.mydomain.com to someid.somehelpsystem.net 

Now, for setting up your tracker you need an A-record. You may want to do this for your root domain i.e. domain.com , or a subdomain such as track.domain.com

For your root (apex) domain, use the following settings then click add:

The @ symbol in the name field indicates the root/apex, the IP should be that of your server. If you want to add a subdomain, add something like so:


If you haven't yet used our deployment manager or another method to set up your server, go and do that now, or you can just put a placeholder like 123.123.123.123 for the mean time.

Automatic TTL is fine but make sure o turn off the caching/acceleration feature by clicking the cloud icon for now. It should be off/gray. 

We will go through the correct way to configure this for "orange cloud" later below.

Now, once you have added the domain the DNS system should respond almost immediately. DNS changes can take time due to expiry of cached values (governed by the TTL value and many systems), but new entries should be immediately available.


Step 5: Check your server has required settings

When running our automated deployment processes the webserver (Nginx) adds a generic host so that it will serve any domain name directed at it.

This is useful as it lets you point any domain at the tracker and have it work, although your license will be attached to only one domain, which is the one you must log into the dashboard through.

So, for this setup you don't need to do anything more.

However if you are running your own server environment, make sure your Nginx/Apache config is set up to add a virtual host for the domain you are going to have the tracker under.

If you plan to use CNAME entries to alias other domains to your tracker, make sure to also add these aliases to the same vhost config so that they all serve from the same place.

If you have finished DNS setup and deployment, you can load yourdomain.com/admin/ to log in to the tracker, or yourdomain.com/install.php if you need to start the installation.


Additional: Configuring Orange Cloud Mode and SSL

Here I'll show you an ideal setup for Cloudflare + your tracker, with the benefits:

  • Free (and fast) SSL

  • SSL for CNAMEs as well, if done right

  • You hide your real server IP

Firstly, find your tracker A-record for your core domain. You can switch this to orange cloud mode, which will cause requests to proxy through Cloudflare's servers first before getting to your tracker.

This would normally cause problems if it weren't for the fact that:

  • FunnelFlux looks at the IP information Cloudflare forwards to the tracker, so it can tell what the original user IP was and use that

  • We are going to make changes that prevent issues.


Next step: go to the Crypto tab. Turn on SSL, flexible mode


Next step, go to the Page Rules section. Here we want to add a page rule that tells Cloudflare to essentially disable security measures and caching.

For the URL match, put:

*mydomain.com/*

This will match all URLS being requested.

Then, set the rules shown below.

Save and deploy the rule.

...and that's it!

Now, you should wait a few minutes, then load your tracker in an incognito window and check all is working as expected.

Load it using http and https. Check it works fine.

Load a test tracking link, then look at your stats > break down by e.g. ISP, IP, country, etc. and check it is tracking you properly and showing your details.

If you see details coming through with random IPs, listing a different country to expected, not listing your ISP etc., then there may be a configuration issue that is causing FunnelFlux to see the Cloudflare server, not you the real user.


Additional: Configuring CNAMEs and their SSL

One of the biggest advantages of Cloudflare is that they generate SSL certificates for every domain you add to your account.

If using SSL, its also great to have it handled by Cloudflare in Flexible mode, as the SSL negotiation is fast - i.e. links should be faster than if your server did it.

If you want to use CNAME domains, you can also use SSL with these and Cloudflare, but there is one key limitation you need to know about: both these domains must be in Cloudflare on the same account.

So, how to setup?

Just add your other domain to Cloudflare, set up a CNAME record for it (use @ for the name so it uses the root domain for the record you're adding), then go through the same steps above with enabling flexible SSL and adding a page rule.

Be sure to test the domain afterward in both http and https forms to ensure it works.

And that's it! You now have free SSL on all CNAME domains through the magic of Cloudflare.

Did this answer your question?