Files
kb-anhonesthost/src/content/docs/cpanel/wordpress-email-from-your-domain.mdx
T
AnHonestHost DevandClaude Opus 5 425f364f48 docs: add cPanel section; drop the outbound-filtering page
Adds a cPanel hosting section so cPanel customers have a correct
destination — previously this KB was WHP-only, so cPanel-specific
articles had nowhere to redirect to:

- cpanel/nameservers                        (WHMCS 5, 24k views)
- cpanel/free-ssl-certificate               (WHMCS 8, 18k views)
- cpanel/fix-a-403-error                    (WHMCS 6, 20k views)
- cpanel/wordpress-email-from-your-domain   (WHMCS 7, 25k views)

Rewritten rather than copied where the originals were wrong or thin:
- WordPress SMTP told customers to use port 25 unencrypted; now 587/TLS
  with 465 as the implicit-TLS alternative.
- The 403 article now says explicitly that loosening permissions to 777
  makes suEXEC refuse harder, since that's the instinctive wrong fix.
- AutoSSL gained the actual failure modes (CAA records, .htaccess
  redirects intercepting validation, domain not added to the account).

Also removes email/outbound-spam-filtering, added in the previous commit.
Outbound filtering via Baruwa has been disabled and Baruwa is being retired,
so the page describes a feature we no longer offer. It needs rewriting
around the Proxmox migration before it can ship.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-01 14:47:44 -07:00

75 lines
3.4 KiB
Plaintext

---
title: Send WordPress email from your own domain
description: Stop WordPress sending as user@server and send from an address on your domain instead, using an SMTP plugin and a real mailbox.
sidebar:
order: 4
---
import { Steps, Aside } from '@astrojs/starlight/components';
import Support from '~/content/partials/support-link.mdx';
If your WordPress site sends mail — contact forms, order confirmations, password resets — you may notice it arrives from something like `user@host.server-host.tld` rather than your own domain.
That's deliberate. PHP's built-in mail function is configured to send as the account that owns the site, which makes it much harder for a compromised script to forge mail as someone else. The side effect is unbranded — and often poorly delivered — email.
The fix is to send through a real mailbox on your domain using SMTP.
<Aside type="tip">
This also improves **deliverability**. Mail sent through an authenticated mailbox on your domain passes SPF and DKIM checks; mail sent by PHP as `user@server` frequently doesn't, and lands in spam.
</Aside>
## Step 1 — Create a mailbox to send from
<Steps>
1. In cPanel, open **Email Accounts** under the **Email** section.
2. Create an account for the site to send as — `noreply@yourdomain.com` is the usual choice.
3. Use the **password generator** and copy the password somewhere temporarily — you'll need it in a moment, and you won't be shown it again.
4. Set a **mailbox quota**. People reply to `noreply` addresses regardless of the name, and without a quota those replies accumulate against your hosting space indefinitely.
</Steps>
## Step 2 — Install an SMTP plugin
WordPress needs a plugin to route mail through SMTP instead of PHP. Any of the well-maintained ones work:
- [WP Mail SMTP](https://wordpress.org/plugins/wp-mail-smtp/)
- [Easy WP SMTP](https://wordpress.org/plugins/easy-wp-smtp/)
- [Post SMTP](https://wordpress.org/plugins/post-smtp/)
## Step 3 — Configure it
In the plugin's settings, choose the **Other SMTP** / custom option and enter:
| Setting | Value |
| --- | --- |
| **SMTP host** | Your server's hostname (for example `cpanel01.cloud-hosting.io`) |
| **Encryption** | TLS |
| **Port** | `587` |
| **Authentication** | On |
| **Username** | The **full** email address — `noreply@yourdomain.com`, not `noreply` |
| **Password** | The password you generated |
| **From address** | The same mailbox address |
<Aside type="caution">
Use port **587 with TLS**, or **465 with SSL** if your plugin prefers implicit TLS. Don't use port **25** without encryption — it sends your mailbox password across the network in the clear, and many networks block it outright.
</Aside>
Two details that account for most failures: the username has to be the **whole** address, and the **From** address must match the mailbox you authenticated as. A mismatch gets rejected or treated as spoofing.
## Step 4 — Send a test
Every one of these plugins has a test-email feature. Use it before assuming it works, and send to an address at a different provider (Gmail, Outlook) rather than another mailbox on your own domain — that exercises the path real recipients take.
## Related
- [What are my nameservers?](/cpanel/nameservers/)
- **On WHP?** See [Create an email account](/whp/how-to/create-an-email-account/) — the mailbox part differs, the plugin setup is the same.
## Still stuck?
<Support />