docs(whp): add how-to articles (domain, site, email, backups) + placeholder screenshots
Placeholders are 1440x900 'Screenshot pending' PNGs that will be overwritten by real captures via 'npm run screenshots' once a demo user is provisioned.
This commit is contained in:
@@ -0,0 +1,84 @@
|
||||
---
|
||||
title: Create a site
|
||||
description: Spin up a PHP, Node, or static HTML site on a domain you've added to WHP.
|
||||
sidebar:
|
||||
order: 2
|
||||
---
|
||||
|
||||
import { Steps, Aside } from '@astrojs/starlight/components';
|
||||
import SignIn from '~/content/partials/signing-in.mdx';
|
||||
import Hostnames from '~/content/partials/service-hostnames.mdx';
|
||||
import Support from '~/content/partials/support-link.mdx';
|
||||
|
||||
## Before you start
|
||||
|
||||
- A **domain already added** to your account ([Add a domain](/whp/how-to/add-a-domain/) covers that).
|
||||
- Decide what kind of site you're building: **PHP**, **Node**, or **static HTML**.
|
||||
- About 5 minutes.
|
||||
|
||||
## Sign in to WHP
|
||||
|
||||
<SignIn />
|
||||
|
||||
## Steps
|
||||
|
||||
<Steps>
|
||||
|
||||
1. From the sidebar, open **Sites → Add Site**.
|
||||

|
||||
|
||||
2. Pick the **site type**:
|
||||
- **PHP** — best for WordPress, Joomla, Laravel, and most off-the-shelf CMSes.
|
||||
- **Node** — for custom apps you build and deploy (Express, Next.js in standalone mode, Fastify, etc.).
|
||||
- **Static HTML** — for prebuilt site bundles from tools like Astro, Hugo, Eleventy, or Jekyll. No runtime; just files.
|
||||
|
||||
3. Pick the **domain**. The dropdown lists domains you've already added.
|
||||
|
||||
4. (PHP only) Pick the **PHP version**.
|
||||
|
||||
5. (Node only) Pick the **Node version** and the **start command** (typically `npm run start`).
|
||||
|
||||
6. Click **Create site**. WHP provisions the container — usually under a minute. You'll see the new site in the **Sites** list when it's ready.
|
||||
|
||||
</Steps>
|
||||
|
||||
## Where your files go
|
||||
|
||||
When you connect via SFTP, your account home shows one folder per domain. Inside each domain folder, the layout depends on the site type:
|
||||
|
||||
| Site type | Layout | Docroot is... |
|
||||
| ------------ | ----------------------------------------------------- | ------------------------------------------------------ |
|
||||
| PHP | `public_html/`, `logs/`, `crontab` | `public_html/` |
|
||||
| Node | `app/`, `logs/` | Whatever your start command serves; we run it from `app/` |
|
||||
| Static HTML | files directly (e.g., `index.html`, `assets/`) | The domain folder itself |
|
||||
|
||||
Upload your files to the right place and the site picks them up immediately.
|
||||
|
||||
## Connect to databases and caches
|
||||
|
||||
<Hostnames />
|
||||
|
||||
## Verify it worked
|
||||
|
||||
Open your domain in a browser. You should see your site, or the default "no content yet" placeholder if you haven't uploaded files. For Node sites, give it 15–30 seconds after creation for the process to start.
|
||||
|
||||
<Aside type="tip">
|
||||
Static HTML sites are the fastest path if your toolchain produces a bundle (Astro, Hugo, Eleventy, etc.) — you skip the runtime entirely.
|
||||
</Aside>
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
**You see a default "no content" page.** Upload your files via SFTP — for PHP into `public_html/`, for Node into `app/`, for static directly into the domain folder.
|
||||
|
||||
**Node site returns 502.** Check that your start command runs successfully locally, and that it binds to the port shown on the site's WHP detail page (we set it via an env var; see the site's environment in WHP).
|
||||
|
||||
**PHP site shows a blank page or 500.** Check your site's error log (sidebar → Logs → pick the site). Common cause: a syntax error in `index.php` or a missing PHP extension — request extensions via a [support ticket](https://secure.anhonesthost.com/submitticket.php) if needed.
|
||||
|
||||
## Related
|
||||
|
||||
- [Add a domain](/whp/how-to/add-a-domain/)
|
||||
- [Service hostnames](/whp/reference/service-hostnames/)
|
||||
|
||||
## Still stuck?
|
||||
|
||||
<Support />
|
||||
Reference in New Issue
Block a user