Skip to main content
Serverlys
Tutorials

Get the job done

Complete procedures with the actual record values, settings and commands. Each one names the mistake people make, because that is usually why you are here.

  • Domains & DNS
  • Email
  • WordPress
  • Security
  • Recovery
Domains & DNSAbout 10 minutes

Point your domain at Serverlys

The two ways to connect a domain to your hosting, and how to choose between them.

Before you start

  • Access to wherever your domain is registered
  • Your Serverlys nameservers or server IP, both in your welcome email
  1. Decide: nameservers or an A record

    Changing nameservers hands all DNS for the domain to Serverlys — simplest, and right for most people. Changing only the A record points the website here while leaving everything else, including email, answered where it is now. If your email is with Google Workspace or Microsoft 365 and you do not want to recreate those records, use the A record.

  2. Write down what you have now

    Before changing anything, screenshot the current DNS records — especially MX, TXT and any CNAME. If you switch nameservers without copying these across, email stops. This is the single most common way a domain move breaks a business.

  3. Lower the TTL, then wait

    Set the TTL on the record you are about to change to 300 seconds and leave it for at least as long as the old TTL was. Resolvers around the world are caching the old value; this is how you stop them caching it for another day after you make the change.

    TTL: 300
  4. Make the change

    For nameservers, replace the existing entries with the Serverlys pair. For an A record, set the host to @ and the value to your server IP, then add a CNAME for www pointing at your domain.

    A     @     your.server.ip.address
    CNAME www   yourdomain.com.
  5. Confirm it resolves here

    Check from a device that has never visited the new server — a phone on mobile data is ideal. Your own machine may have the old answer cached for hours regardless of TTL.

  6. Issue the SSL certificate

    Only after the domain resolves to us. Certificate issuance validates by looking up the domain, so it cannot succeed before DNS points here. Then raise the TTL back to something sensible, like 3600.

The mistake people make

Switching nameservers without copying your MX records first. The website comes up, everything looks fine, and email silently stops arriving — often for a day before anyone notices.

EmailAbout 20 minutes

Set up email that actually gets delivered

SPF, DKIM and DMARC in plain terms, and the order to add them in.

Before you start

  • Access to your domain's DNS records
  • A list of everything that sends mail as your domain
  1. List every sender first

    Your mail server, your website's contact form, your invoicing tool, your newsletter platform, your CRM. Each one sends as your domain, and any you forget will start failing the moment you publish a strict policy. This list is the whole job — the DNS records are the easy part.

  2. Publish one SPF record

    SPF names the servers allowed to send as your domain. You may only have ONE SPF record per domain; two is a permanent error and worse than none. Merge every sender into a single record.

    v=spf1 include:_spf.yourhost.com include:_spf.google.com ~all
  3. Turn on DKIM at each sender

    DKIM signs outgoing mail cryptographically so a receiver can tell it was not altered. Each platform gives you a public key to publish as a TXT record at its own selector. Do this for every sender on your list, not just the main mailbox.

  4. Start DMARC in monitor mode

    DMARC tells receivers what to do when SPF and DKIM fail. Start with p=none, which changes nothing and only asks for reports. Do not skip this step — going straight to reject is how legitimate mail disappears.

    v=DMARC1; p=none; rua=mailto:dmarc@yourdomain.com
  5. Read the reports for two weeks

    The aggregate reports show every source sending as your domain, including ones you forgot. Fix each legitimate sender until it passes. Anything still failing after that is either misconfigured or is not yours.

  6. Tighten the policy

    Once the reports are clean, move to p=quarantine, watch for another fortnight, then p=reject. That final record is what stops other people sending mail that looks like it came from you.

    v=DMARC1; p=reject; rua=mailto:dmarc@yourdomain.com

The mistake people make

Two SPF records on one domain. It is a permanent failure, not a warning, and it makes deliverability worse than having no SPF at all. If you are adding a sender, edit the existing record — never add a second.

WordPressAbout 15 minutes

Install WordPress and make it fast on day one

The setup decisions that are painful to change later, made correctly at the start.

Before you start

  • A hosting plan and a domain already pointing at it
  1. Install, then set the permalink structure

    Settings → Permalinks → Post name. Do this before you publish anything. Changing it later changes every URL on the site, which means every link anyone has shared stops working unless you write redirects.

    /%postname%/
  2. Choose HTTPS in both address fields

    Settings → General. WordPress Address and Site Address must both start with https://. Setting only one causes redirect loops that are genuinely confusing to debug.

  3. Delete what you are not using

    Every default theme except the active one, and every plugin you are not going to keep. An inactive plugin still has code on disk and still needs patching — it is attack surface with no benefit.

  4. Turn on server-side caching before adding a caching plugin

    On Serverlys, LiteSpeed caching is configured for you. Install LiteSpeed Cache to talk to it rather than a plugin that implements its own PHP-level cache — running two caching layers that do not know about each other produces stale pages nobody can explain.

  5. Fix images at upload, not afterwards

    Set your theme's content width, and stop uploading photos straight from a phone camera. A 4000-pixel JPEG displayed at 800 pixels is the most common cause of a slow WordPress homepage, and no plugin fixes it as well as not doing it.

  6. Set up backups before you need them

    Daily backups run at the server level on every Serverlys plan and restores are free. Confirm you know where to find them now, while it is a calm afternoon rather than an emergency.

The mistake people make

Publishing content before setting permalinks. Every URL changes when you fix it, and search engines have to be told about all of them individually.

SecurityAbout 10 minutes

Force HTTPS and clear mixed content

Get the padlock, keep it, and find what is still loading over http.

Before you start

  • A valid certificate already issued for the domain
  1. Confirm the certificate covers what you use

    Load the site with https:// explicitly. A certificate issued for example.com may not cover www.example.com unless both were requested. If you use both, both need to be on the certificate.

  2. Redirect http to https at the server

    Do it once, at the server or in .htaccess, rather than in a plugin. A plugin redirect runs after PHP has started, which is slower and stops working the moment the plugin is disabled.

    RewriteEngine On
    RewriteCond %{HTTPS} off
    RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
  3. Find the mixed content

    Open the browser console on a few pages. Anything reported as blocked or insecure is a resource still requested over http — usually an image URL hardcoded in the database, an embedded font, or a script from a third party.

  4. Fix the database references properly

    WordPress stores some settings as serialised data, where a naive find-and-replace corrupts the value and breaks widgets. Use a tool that understands serialisation, or ask us to run it.

  5. Only then consider HSTS

    HSTS tells browsers to refuse http for your domain in future. It is the right end state and it is hard to undo — a browser that has seen the header will honour it for the max-age you set. Turn it on once everything genuinely works over https, not before.

The mistake people make

Enabling HSTS with a long max-age while a subdomain still has no certificate. Browsers will refuse to load that subdomain at all, and you cannot take it back until the max-age expires.

RecoveryAbout 10 minutes

Restore a backup without making it worse

What to check before you roll back, and what a restore will overwrite.

Before you start

  • Access to your hosting control panel or a support ticket open
  1. Stop and work out when it broke

    Restoring to a point after the problem started just reproduces the problem. Check the error log and your own timeline — an update, a publish, a plugin install — and pick a restore point from before it.

  2. Decide what you are restoring

    Files and database are separate decisions. A broken plugin usually needs files only; a corrupted post or a bad import needs the database. Restoring both when you needed one loses everything written in between.

  3. Save anything written since

    Orders, comments, form submissions and posts created after the restore point will be gone. Export them first if they matter. This is the step people skip and regret.

  4. Restore, then clear every cache

    Server cache, plugin cache, and any CDN in front of the site. A restore that appears not to have worked has usually worked fine and you are looking at a cached copy of the broken version.

  5. Find the cause before re-applying anything

    You have rolled back to a working state, which means the thing that broke it will break it again if you simply redo it. Reapply updates one at a time on staging.

The mistake people make

Restoring the database to fix a plugin problem. It fixes the plugin and deletes every order taken since the restore point.

Domains & DNSAbout 5 minutes

Lower your TTL before a migration

The one preparation step that turns a day of split traffic into minutes.

Before you start

  • Access to your domain's DNS, at least a day before you move
  1. Find out what your TTL is now

    TTL is how long resolvers are allowed to cache a DNS answer, in seconds. 3600 is an hour; 86400 is a day. Whatever it says, that is how long some visitors will keep reaching your old server after you change anything.

  2. Lower it to 300

    Set the TTL on the records you will be changing — usually A and CNAME — to 300 seconds. Do not change the record values yet, only the TTL.

    TTL: 300
  3. Wait one full old TTL

    If it was 86400, wait a day. Resolvers holding the old answer also hold the old TTL, and they will not learn about the shorter one until their existing cache expires. Lowering the TTL an hour before a migration achieves nothing.

  4. Do the migration

    Now the change propagates in about five minutes rather than a day, which means the window where some visitors see the old site and some see the new one is short enough not to matter.

  5. Put it back afterwards

    Once you are happy, raise it to 3600 or higher. A permanently low TTL means more lookups for every visitor and slightly slower first connections.

The mistake people make

Lowering the TTL and migrating the same afternoon. The old TTL is still cached, so the change takes exactly as long as it would have anyway.

Stuck on something not covered here?

Support is included on every plan, and it reaches a person. There is also the blog for the why behind these, and the FAQ for questions about buying.

Get help

A plan that still makes sense in year two

Free migration, free SSL and daily backups on every plan, with a 30-day money-back guarantee.

Prefer the phone? (305) 671-1272 · Existing customer? Client login

Your privacy

We store only what the site needs to work, like a notice you closed or your domain shortlist. No advertising or analytics cookies, and no third-party trackers. Privacy policy