WordPress Permalinks Not Working Error: 10 Proven Fixes

Jan 02, 2024  | How ToWebsite Maintenance
Broken links are frustrating, and so is losing your site’s functionality.

Imagine someone visiting your website, clicking around, and finding some pages leading nowhere or to pages telling them, “404 page not found.”

Your WordPress permalinks aren’t working properly, and broken permalinks encourage visitors to look at your rivals instead, meaning you lose revenue and reputation.


GIPHY

Thankfully, you can fix WordPress permalinks and improve the user experience for your visitors.

In this guide, we explore:

  • Why your permalinks aren’t working
  • How to fix them
  • When you need to call an expert for help

If you want to skip straight to the solutions, click ahead here.

What Are WordPress Permalinks?

WordPress permalinks are fixed URLs for your website’s pages, posts, lists, products, and categories.

A permalink is an address people use to access specific content on your WordPress site.

For example, the permalink for your contact page might be:
https://yoursitehere.com/contact-page.

WordPress lets you customize permalinks, but what’s in your permalink URLs affects your SEO, meaning you usually need to include a relevant keyword for visibility on any search engine.

Although custom permalinks in WordPress help people navigate to different pages on your website, they can develop faults that lead people nowhere.

What Causes WordPress Broken Permalinks?

Permalinks break for various reasons, usually after updates or changes to your site.

Here are the nine most common reasons for permalinks not working in WordPress:

  1. Your URLs changed when you edited or updated a file, page, or post name
  2. A WordPress core update has triggered the fault
  3. Installed plugins or themes are conflicting, typically after updating WordPress or individual software
  4. A new plugin, like WooCommerce, is faulty
  5. Your new security plugin is being overprotective
  6. You recently restored a site backup, and it’s causing .htaccess problems
  7. Your .htaccess file has otherwise changed, causing an incompatibility
  8. Your file permissions need updating
  9. You migrated to a new domain or server

The above issues can cause healthy permalinks to produce 404 error pages that tell website visitors that the pages they’re looking for don’t exist.

However, you know they exist – you just need to fix the links so people can see them again!

How To Fix Permalink Issues in WordPress: 10 Effective Ways

We’ve arranged the following step-by-step guide into four categories:

  1. Common fixes: straightforward checks that frequently solve this issue
  2. Fixes to try next: slightly more technical fixes that you can still try on your own
  3. More technical fixes: uncommon solutions that can get complex – you likely need expert help here
  4. Contact an expert: we recommend you reach out to your web host or a WordPress developer

Before you start

Always have a backup of your WordPress website saved.

Consider using a backup plugin like Jetpack or contacting your web host to save one.

Ideally, use automated website backups. That way, whether your WordPress permalink settings are not working or you can’t log into your dashboard, you always have a save point.


GIPHY

Next, download a file transfer protocol (FTP) client, a file manager that helps you make technical changes to your website. We recommend free tools like SmartFTP or Filezilla.

Finally, if you feel uncomfortable with technical terms like index.php or don’t have the time to fix your permalinks, a WordPress developer can help. Jump to step ten to find out more.

How to fix broken permalinks in WordPress: A summary

Common fixes for permalinks broken in WordPressQuick summary
1. Check your site with a broken link checkerDownload WPMU DEV’s Broken Link Checker, scan your site, and edit any faulty links that appear
2. Reset your permalink settings and clear your browser’s cacheHead to “Permalinks” in “Settings” via the WordPress dashboard and click save; then clear cookies and save data from your browser
3. Audit your plugins and themesDeactivate and reactivate plugins one by one in WordPress, check if problems continue, and change your theme
4. Delete and restore your .htaccess fileUse an FTP program to delete .htaccess from your root folder; replace it by logging into WordPress and resaving permalinks settings (step two)
5. Restore your file permissions to WordPress’s recommendationsUse an FTP program to edit permissions for files and folders
Fixes to try next
6. Ensure SSL has updated your linksUse an SSL plugin to migrate your site to an updated certificate so all your links are secure
7. Check directs in your domain settingsUse a redirection plugin to check where your links lead and edit those that go nowhere
More technical fixes (easier with professional help)
8. Verify your Apache server configurationsEdit mod_rewrite settings in your private server, or contact your host for advice
9. Verify your Nginx server configurationMake command edits to your private server, or ask your hosting provider for guidance
Contact an expert
10. Reach out to your web host or a WordPress developerIf none of the above work, contact your web host or a developer at StateWP for a speedy fix

Common fixes

The following tips are easy to follow and typically resolve most permalink issues in WordPress.

1. Check your site with a broken link checker

Instead of poring through your website to look at each filename and see which permalinks are failing, use a broken link checker plugin to sweep your content.

We recommend using “Broken Link Checker” by WPMU DEV, which you can run regularly to scan for potential issues.

Before you install, however, be warned that some web hosting services don’t allow broken link checker plugins. Check with your host, and skip ahead if you need to.

Log into your WordPress dashboard, select “Plugins” and “Add New,” and search for “Broken Link Checker.” Select it, then click “Download” and “Install.”

Once installed, you should see an option for “Link Checker” on the left-hand side of your WordPress dashboard screen. If you can’t see it, look for “Link Checker” under “Settings” or “Tools” instead.

The plugin should start running in the background, and you may find a couple of broken links before you start playing around with the software.

Use the software to run a full scan of your site. If it only finds a few broken links, it’s usually best to set redirects. If there are many broken permalinks, move to step two.

While in the plugin, select any broken links it finds and either “Unlink” to remove them from your site or click “Edit Link” to enter a valid URL for a live page on your site. Click “Update.”

2. Reset your permalink settings and clear your browser’s cache

Sometimes, you can reset permalinks through a factory reset to return to normal. Go to “Settings” and then “Permalinks” in your WordPress dashboard. The next page helps you choose how you’d like your permalinks to appear in URLs.

For example, choose your permalinks to include dates and page names, just names, or a custom structure.

Select your preferred permalink structure and then scroll down to click the “Save Changes” button. Doing so overwrites existing permalink rules.

Then, try to access the broken pages in question again. If there’s still no joy, it’s worth emptying your browser’s cache.

You can empty web caches on all browsers, but we use Chrome for this guide.

In Chrome, click the three-dot menu in the top right of your screen and scroll down to “More Tools.”

Hover over this menu and click “Clear Browsing Data” in the next section.

On the next screen, set the “Time Range” to “All Time” and then check the box for “Cached images and files.”

We recommend you delete “Cookies and other site data.” However, be mindful that this signs you out of websites you’re logged into through Chrome and resets preferences you saved while browsing.

Click “Clear data” and check the faulty links in another Chrome tab or window.

3. Audit your plugins and themes

Occasionally, plugins and themes break down and cause problems such as the infamous 403 error and visual issues such as sidebars disappearing.

They also trigger permalink issues – and if you recently installed a new WordPress security plugin, it could be that it’s being too proactive.

Start by heading to WordPress’s “Plugins” section and filter them by “Active.” Deactivate, then reactivate, each plugin one by one. This way, you narrow down which plugin, if any, is causing the permalink headaches.

Check your faulty pages in a different tab or window. If it’s still bringing up a dead link, reactivate that plugin.

Continue the process with all your plugins. If you find your permalinks work again after deactivating a specific plugin, remove it and replace it with an alternative.

Don’t forget your theme. Go to “Appearance” and “Themes,” select a new look from the WordPress library, then check your dead links.

4. Delete and restore your .htaccess file

.htaccess is an important file that gives instructions to your web server.

When corrupted or configured incorrectly, it causes site permission issues. It’s also a common culprit for permalink woes.

You can usually delete and replace this file, but not if you’re using a Nginx web server, so move on to step five if that applies to you.

Log into your FTP client with credentials from your host. Once logged in, look for the root directory, typically the first open folder for your website.

In the root folder, you should find .htaccess. Right-click to download a backup, and right-click once more to select “delete” or “rename.” If you pick this second option, change the file name to “.htaccess-replace”.

Then, try accessing your faulty links again.

Regardless of whether or not they’re back live, you need to replace .htaccess.

You have two choices:

One: Go to your WordPress dashboard and find “Settings” and “Permalinks.” As with step two, click “Save Changes” at the bottom of the Permalinks screen. Doing so restores .htaccess to your root folder. And remember to delete the “.htaccess-replace” file if you created one.

Two: Delete the “.htaccess-replace” if you created one, then select the new file icon and create a new file in your folder called “.htaccess”. Paste the code snippet below into it and then click “Save and Close.”

 

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\\.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

5. Restore your file permissions to WordPress’s recommendations

If you have issues with .htaccess, it’s worth ensuring your folder and file permissions align with WordPress’s recommended defaults.

To do this, look for your FTP client’s public_html folder, right-click it, and choose “Change file attributes.”

You now need to enter a set three-digit code that ensures the correct permissions are in place for your website’s content.

To start, in the “Permissions Value” box, enter the following code: “755” or “750” – both numbers set the same permission rules.

Check “Recurse into subdirectories” and “Apply to directories only,” then click “OK.”

Doing so resets your directory permissions. You now need to repeat the process for files, so open the same screen and enter the following code: “640” or “644”. Again, either number sets the same rules.

Then, check “Recurse into subdirectories” and “Apply to files only” before clicking “OK.”

Head back to the root folder and look for wp-config.php, a configuration file with some permissions.

Right-click the file, select “File permissions” in the pop-up menu, and type “440” in the value box before clicking “OK.”

Fixes to try next

The tips in this section are more involved but definitely worth exploring if you feel comfortable with WP.

6. Ensure SSL has updated your links

Your secure sockets layer (SSL) is a security measure that protects data when moving between servers and browsers.

If you’ve just installed new SSL settings or updated your certificate, your changes may conflict with your permalinks.

SSL changes sometimes trigger permalink problems if any of your pages move from HTTP to HTTPS and your database hasn’t updated properly, resulting in WordPress permalinks not updating.

One of the easiest ways to ensure your whole website moves to HTTPS is to use Really Simple SSL, a WordPress plugin.

Follow the same plugin installation process from step one, but search for Really Simple SSL instead. Then, head back to “Settings” in your WordPress dashboard and click “SSL” from the menu.

If you’ve already installed an SSL certificate, click “Activate SSL” to secure your site. If you haven’t installed a certificate, click “Install SSL Certificate” instead.

Wait for the process to complete, then click “Save and continue.”

You might see a prompt for your site’s email address and a slider button where you agree to the plugin’s terms and conditions. Read these carefully, and move the slider across if you want to continue. Then, click “Save and continue.”

Your SSL certificate is ready to go. Recheck your broken links to see if the permalink error is fixed.

If not, you might need to contact your web host to change specific pages from HTTP to HTTPS.

7. Check redirects in your domain settings

When you move your website to a new domain via WordPress, you can redirect all the permalinks from your default WordPress.com domain to your new address.

If your WordPress permalinks are not working after migration, your redirects might point to outdated pages.

If so, it’s wise to check any URL redirects in place with a free plugin such as Redirection.

Search for Redirection by John Godley via “Plugins” and “Add New” as you did in step six. “Install” and “Activate” it, head to “Tools” in your dashboard, and find “Redirection” as a subtab.

Click the “Redirects” tab to see active redirects for your website, showing initial link addresses and where they’re now heading.

Click “Check Redirect” under each redirection to check they are working as expected. If not, click “Edit” under each redirection to change the URL you send visitors to.

More technical fixes (easier with professional help)

These steps require advanced technical knowledge. However, when combined with professional help, they can fix stubborn permalink errors in WordPress installations.

8. Verify your Apache server configurations

Many websites run on open-source Apache servers. You can adjust your server configurations to resolve permalink problems.

If you’re certain that you run your website through a Nginx server, move to the next step instead.

If you’re running a website through a host, you don’t need to worry about Apache configurations because most providers handle them for you.

However, you must change Mod_Rewrite if you’re running a private Apache server – the process involves applying the “AllowOverride” Rule.

Even if you’re reasonably confident about editing your server configuration at the command line, it’s still a lengthy process that could harm your website if you make a mistake.

We recommend taking a safer route and contacting your web host first. Skip ahead to step ten.

9. Verify your Nginx server configuration

There’s a different process to configuring Nginx servers around WordPress permalinks, though the principles are similar to Apache.

Again, it involves making some edits to commands, which could risk further problems if you’re new to the process.

If you feel up for it, check out this guide for more details.

However, if you’re at this stage and are unsure how to make these fixes yourself, we highly recommend you jump to the next step and get professional help.

Contact an expert

Even if you find just one important permalink that isn’t working in WordPress, there’s no harm or shame in asking for help. Here’s what to do.

10. Reach out to your web host or a WordPress developer

We get it. Some of the steps in this guide are pretty intricate.

Web hosts like Siteground let you raise problem tickets through online help centers. If you’ve tried any of the steps above and prefer an expert to help you fix your permalinks, go to the “Contact Us” tab in Siteground’s help section.

Log into the host’s Client area, click the “?” in the top right, then “View Help Center” and “Contact Us.”

You can search through problem topics or contact an available expert. Siteground offers live chat, phone, and email support. You can send support tickets through the host’s Help Center and track progress through the Support History section.

Nevertheless, contacting a WordPress developer directly, such as through StateWP’s Proto dashboard, is usually quicker and more reliable.

With a Proto account, you can manage your WordPress account, monitor performance, and raise error requests with StateWP experts from one screen.

In Proto, simply head to the “Service Requests” section of the side menu and click “Submit a Request.”

Use the form on the next page to explain the permalink problems you’re experiencing and what you’ve done already to address issues yourself.

Submit your request, and a StateWP representative will get back to you and fix your permalink issues within a day.

WordPress Permalinks Not Working? Say Farewell to 404s

Seeing WordPress permalinks not working correctly isn’t just annoying; it’s costly. Broken WordPress permalinks could affect your revenue and even your SEO performance over time.

But there’s no need to panic.


GIPHY

The best starting point for fixing permalink problems in WordPress is to run a broken link checker and regularly audit your website.

However, if your WordPress permalinks keep breaking, remember to:

  • Clear your cache and cookies
  • Check your plugins and theme
  • Restore your .htaccess file
  • Check and restore file permissions

Having a team like StateWP and a dashboard like Proto on your side is worth it. Instead of troubleshooting, call us to fix your site, end your WordPress woes, and give you more time to focus on running your business.

Check out our website maintenance checklist to ensure you’re well-equipped for future problems.

Prepare yourself for malicious attacks by reading our tutorial about WordPress hacking signs so you know how to bounce back.

x