docs: verify against real WHP + capture real screenshots

Discovery against the demo account on whp01 surfaced several inaccuracies:

- Cache is Valkey (Redis wire-compatible), not Redis or Memcached.
  No Memcached is offered as a separate service.
- Site Monitoring is the sidebar label (not 'AI Monitor').
- 'Add a domain' has no Primary/Add-on distinction.
- Sites form: 'Container Type' (not 'Site type'), Number of Containers
  (1-10 for horizontal scaling), CPU per Container (default 0.25),
  Memory per Container (default 256MB), SSL inline on the same form.
- Backups: default retention 5 days / 10 backups; on-demand + scheduled;
  S3 backup targets are visible and configurable.
- Email: per-domain settings live behind 'Setup Instructions' on the
  Email page; mail server hostname is on the Dashboard (per-server,
  e.g. mail01.cloud-hosting.io), not per-domain.

Also reworked the screenshot pipeline:
- New shots.config.ts targets the real index.php?page=... URLs
- Added redactSensitive() step that runs before each screenshot to swap
  server names, IPs, mail hostnames, and demo-user-isms with neutral
  placeholders. This keeps docs portable across the fleet.
- Hides .brand-full and .navbar-text (top-bar server identifier and
  Welcome greeting).
- Captured 9 real WHP screenshots; removed stale placeholders.
This commit is contained in:
2026-05-17 17:00:13 -07:00
parent 53bc37fd0d
commit c602b8f8f3
32 changed files with 460 additions and 152 deletions
+35 -32
View File
@@ -1,6 +1,6 @@
---
title: Backups
description: Confirm WHP is backing up your site, restore individual files, and download archives.
description: Run on-demand and scheduled backups of your sites and databases, and confirm they're succeeding.
sidebar:
order: 4
---
@@ -9,76 +9,79 @@ import { Steps, Aside } from '@astrojs/starlight/components';
import SignIn from '~/content/partials/signing-in.mdx';
import Support from '~/content/partials/support-link.mdx';
WHP runs **automatic daily backups** of your site files and databases. You don't have to set anything up for this to happen — but it's worth knowing how to confirm a backup ran, restore something, and download an archive when you need to.
WHP keeps automatic backups of your sites and databases. The **Backup Management** page lets you trigger an on-demand backup, add a scheduled backup, manage where backups are sent, and review history.
## What's backed up by default
## What's backed up
- **Site files** — everything under each domain folder.
- **Databases** — all MySQL databases attached to your account.
- **Email** — mailboxes and their contents (depending on your plan).
- **Sites** — files for each site.
- **Databases** — every MySQL and PostgreSQL database attached to your account.
Retention is shown on your plan page. The default tier keeps **7 daily backups**.
Default retention on built-in backup targets is **5 days, up to 10 backups**.
## Sign in to WHP
<SignIn />
## Configure your backup schedule
## Run an on-demand backup
<Steps>
1. From the sidebar, open **Backups → Settings**.
![WHP Backup Settings page](~/assets/screenshots/whp/whp-backups-settings.png)
1. In the sidebar, click **Backups**.
![WHP Backup Management page](~/assets/screenshots/whp/whp-backups.png)
2. Confirm the **schedule** (default: daily, overnight). Adjust if your plan permits.
2. Under **Create New Backup**, pick a **Backup Type** (Sites, Databases, or both) and a **Backup Target** from the dropdown.
3. (Optional) Enable **off-server backups** to a separate storage location — recommended for anything you can't afford to lose.
3. Click **Start Backup**. The run appears in **Backup History** below; status updates live.
</Steps>
## Verify a backup actually ran
## Schedule a backup
<Steps>
1. Open **Backups → History**.
![WHP Backup History page](~/assets/screenshots/whp/whp-backups-history.png)
1. Scroll down to **Scheduled Backups** and click **+ Add Schedule**.
2. Confirm the most recent entry is from **within the last 24 hours** and shows **Success**.
2. Pick the cadence (daily, weekly, etc.), the type (sites / databases / both), and the target.
3. Click the entry to see what was included — files, databases, email — and the total size.
3. Save. The schedule appears in the list and runs automatically.
</Steps>
## Where backups are stored
The **Backup Targets** table shows the destinations available to your account. Built-in targets are S3-backed (for example, `WHP01 S3 Backups`) with retention and a maximum backup count. **Global** targets are managed by us; you can also add your own external target (for example, your own S3 bucket) with **+ Add Backup Target**.
## Verify backups are succeeding
<Steps>
1. Open **Backups**.
2. Look at the **Total Backups** and **Total Size** tiles at the top. If Total Backups stays at 0 over time, no backups are running — open a [support ticket](https://secure.anhonesthost.com/submitticket.php).
3. Check **Backup History** for recent entries. Each should show **Success** within minutes of its scheduled time.
</Steps>
<Aside type="tip">
Add a calendar reminder to check this monthly. Backups that fail silently are the worst kind.
Add a calendar reminder to check the history monthly. Backups that fail silently are the worst kind.
</Aside>
## Test a restore (recommended quarterly)
The best time to discover your backup isn't working is *not* when you actually need it. Test surgically:
1. In **History**, click a recent backup → **Restore preview**.
2. Pick a single file — your site's `index.php`, for example — and restore just that one file.
3. Confirm it appears correctly. If yes, the restore pipeline works.
Find the time to do this before you actually need it. Open a recent backup in **Backup History** → preview the contents → restore a single file (your site's `index.php` is a fine target) → confirm it appears. If the surgical restore works, the pipeline works.
Don't do a full restore unless you genuinely need to — it rewrites your live site.
## Download a backup
To grab a copy off-server:
1. From **History**, click a backup → **Download**.
2. WHP packages it as `.tar.gz` and offers a one-time download link that's valid for 24 hours.
## Troubleshooting
**Backup failed.** Click the failed row to see the error. Common causes:
- Disk full or close to it — check **Overview → Resource usage** and consider a [resource upgrade](/whp/add-ons/resource-upgrades/).
- A very large mailbox slowed the run — consider the [archival email add-on](/whp/add-ons/archival-email/) to relieve mailbox pressure.
- Transient lock or maintenance window — let it retry overnight before opening a ticket.
- Transient lock or maintenance window — let it retry on the next schedule before opening a ticket.
**Restore "succeeded" but my file isn't there.** Check the **path** shown on the backup's detail page — your restore landed where the backup says it would, which may not match your current site layout if you've moved files around.
**"No targets available" when starting a backup.** Your account has no backup targets attached. Open a ticket; we'll get one wired up.
## Related