A website showing a 403 Forbidden error can look alarming, especially when the homepage does not load, but the WordPress login page still works.
This is actually a common issue during website migrations, DNS changes, hosting transfers, or server configuration updates.
This guide explains how to quickly identify and troubleshoot similar situations.
Common symptom
Example:
https://example.com → 403 Forbidden
https://example.com/wp-login.php → works
If the WordPress login page is accessible, this usually means:
- The website files still exist
- WordPress is still installed
- The server is online
- But the frontend access is being blocked
What a 403 Forbidden error means
A 403 error means: The server received the request, but refuses to allow access.
This is different from:
- 404 = page not found
- DNS error = domain not resolving
- Server down = website unreachable
With a 403, the website is still technically online.
Step 1: Check if the issue is DNS or hosting
Use online DNS checking tools such as:
Check the:
- A Record
- Nameservers
Example: example.com → 123.123.123.123
Step 2: Compare nameservers and hosting
Many website owners update DNS in the wrong place.
Example:
- Domain managed in Hosting Provider A
- But active nameservers point to Hosting Provider B
Result:
- Changes in Provider A do nothing
Always verify:
- Where the domain is registered
- Which nameservers are active
- Which server IP the domain resolves to
Step 3: If wp-login works, focus on WordPress/server settings
If: wp-login.php works
Then the issue is usually one of these:
Common causes
Broken .htaccess
A damaged or incorrect .htaccess file can block the homepage.
Wrong file permissions
Folders or files may have incorrect permissions.
Typical settings:
Folders → 755
Files → 644
Security plugin blocking access
Plugins such as:
- Wordfence
- iThemes Security
- All In One WP Security
may accidentally block visitors.
Incorrect document root
The domain may point to the wrong folder.
Step 4: Check hosting access
You may need:
- Hosting control panel access
- FTP/File Manager access
- WordPress admin access
Sometimes hosting support also needs to be contacted, especially if:
- Firewall rules are involved
- The account is suspended
- Server permissions are corrupted
Step 5: Remember DNS propagation
If DNS changes are made:
- Updates may take 24–48 hours worldwide
Some users may see:
- Old website
- New website
- Errors
during propagation.
Simple troubleshooting checklist
✔ Check nameservers
✔ Check live A record IP
✔ Verify hosting provider
✔ Test /wp-login.php
✔ Review .htaccess
✔ Check file permissions
✔ Disable security plugins if needed
✔ Coordinate with hosting support
Final reminder
A 403 error is usually a configuration issue, not a lost website.
In many cases:
- The website is still there
- WordPress still works
- The issue is simply blocking frontend access
Proper DNS verification and hosting checks can quickly narrow down the real problem and avoid unnecessary downtime.