Don’t miss the New Year’s Sale deals!
search
In this article

WordPress permalinks not working: effective steps to resolve 404 errors

WordPress Permalinks not working is one of the main causes of the 404: Not Found error. Fixing it immediately is important as it can negatively affect user experience. Furthermore, it can prevent search engines from crawling your site, damaging your search engine optimization (SEO) efforts.

There are various solutions to this problem – from a simple permalink reset to a WordPress core file replacement. This article will guide you through three practical steps to resolve broken permalinks in WordPress.

Download all-in-one WordPress cheat sheet

The most common issue you’ll notice with broken permalinks is 404: Not Found error in WordPress when accessing a page on your website. Various causes may trigger broken permalinks on your website.

  • New plugin installation. The new plugins you install may interfere with your .htaccess file.
  • Restoring a backup or migrating WordPress. You recently restored a backup or moved your WordPress site to a new domain or server.
  • Updates. Problems with incompatibility after updating plugins, themes, or WordPress core.
  • Changes in .htaccess file. Updating, or altering your .htaccess file incorrectly.

Here are several methods on how you can fix broken permalinks in WordPress.

The simplest way to deal with this problem is by resetting the permalinks structure:

  1. Login to your WordPress Dashboard. Go to SettingsPermalinks.
  2. Select an alternative permalinks structure → Save Changes. For instance, if you’re currently using the Day and name settings. Change it to something else, like Post name.
The Settings section in the WordPress admin panel, showing where to select the Post name option
  1. Once done, change it back to your standard structure and hit Save Changes once again.

If you’re still getting a “404 Page Not Found” error, let’s try other remaining methods.

2. Disabling Plugins

Deactivate the most-recently installed or updated plugin that might be triggering the error. Otherwise, you can also remove all the installed plugins altogether:

  1. Go to the Plugins menu in your WordPress dashboard → Installed Plugins.
  2. Click the Deactivate button next to the plugin’s name.
  3. Once finished, reset the permalinks structure using the previous method.

3. Replacing .htaccess File

In case none of the options solved your broken permalinks issue, the issue can be related to your .htaccess file’s configuration. Thus, you should replace your current .htaccess file with the default WordPress .htaccess code.

In this example, we’ll be using Hostinger’s File Manager:

  1. Navigate to hPanelFile Manager.
  2. Select your domain and press ​Go to File Manager.
  3. Choose the ​.htaccess ​file​ ​in the ​public_html ​folder.
  4. Right-click and select Rename. Then, change the file name (e.g., .htaccess-error).
The Rename popup appears in the hPanel's File Manager, where you can rename the .htaccess file
  1. Next, click the New File icon at the top of the page. Don’t forget to name it .htaccess.
  2. Paste the code below in your new .htaccess file.
# 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 
  1. Once all is done, click the Save button.
The File Editor showing where to add the code snippet to the .htaccess file in the hPanel

Alternatively, you can also run this process by using an FTP client, like FileZilla

If the problem is not solved, try to remember what actions you’ve taken before the error occurred. If it happened after performing a specific update, then restoring a backup might be a reliable option to get your site up and running.

Conclusion

There are plenty of reasons why you can get a broken permalinks issue in WordPress. The bad news is, your website will be inaccessible and will display a “404 Page Not Found” error.

Fortunately, you can effortlessly handle this problem using these three simple methods:

  • Resetting permalinks structure – configure your built-in permalink settings on the WordPress dashboard.
  • Disabling plugins – deactivate the installed plugins in a few clicks.
  • Replacing .htaccess file – replace the .htaccess file from hPanel or using an FTP client.

We hope that this step-by-step tutorial will help you fix broken permalinks on your WordPress website. If you have any more questions, let us know in the comments section below.

Learn more information about WordPress permalinks not working below.

Do Permalinks Expire?

No, permalinks do not expire. They are permanent links that are intended to remain unchanged and accessible for the lifetime of the content they point to. However, changing permalinks on a live site can result in broken links and negative impacts on SEO.

Can I Change My WordPress Permalink After Publishing?

Yes, you can change your WordPress permalink after publishing by going to Settings → Permalinks in the WordPress dashboard, selecting the new permalink structure, and clicking Save Changes. However, changing permalinks can impact SEO and result in broken links if not properly redirected.

Author
The author

Domantas G.

Domantas leads the content and SEO teams forward with fresh ideas and out of the box approaches. Armed with extensive SEO and marketing knowledge, he aims to spread the word of Hostinger to every corner of the world. During his free time, Domantas likes to hone his web development skills and travel to exotic places.

What our customers say

Comments

Author
Liz

February 01 2018

Hello, I followed your instructions and I was able to fix the error. Thanks. Your content is also easy to understand, especially for those like me who aren't as tech-savvy. Great Job!

Author
Ashley

March 28 2019

Thank you!

Author
Mark

August 27 2020

This was such a helpful tool, saved me an awful lot of stress, thanks for the information!

Author
Rick

November 02 2020

Sometimes the problem is apache2 or httpd and its configuration is preventing the .htaccess file from operating on your requests. If 'AllowOverride All' isn't in your main apache or httpd configuration file for the Wordpress directory location, all the wrangling you do won't fix the problem. Sometimes, you're on a multi-site host and this isn't under your control. You'll have to contact the hosting provider's support to report the problem. If you have control over the configuration of the httpd server, these lines have to exist in the main httpd.conf file for your server: * note: the directory location here has to point at the wordpress installation location <---------- AllowOverride All This allows the .htaccess file to define its own url rewrite rules. If this isn't there, then the .htaccess file is essentially dead. Changing the permalink configuration will have no effect. Most of the time, the advice given in this post will fix the problem. But there is that occasional edge case where it won't and it is likely the http configuration that is the culprit.

Author
Richard

November 08 2020

I have recently started working on website hosted in hostinger and it has latest WordPress 5.5.3 My issue is that I want to create permalink for pages but the categories is not appearing in the url. expectation url: https://website/categories/post actual url: https://website/post. I have only one plugin: Pages with category and tag. In the setting–> permalink I have chosen: custom structure: /%category%/%postname%/ Is this an issue with WordPress 5.5?

Author
Kamal Edirisinghe

April 29 2021

Very useful and saved my life

Author
Stonedcoder

October 04 2021

works like a charm

Author
Arianna

March 03 2022

If those 3 things don't work, what else would fix this? I've tried all 3 and no change. I can see posts with plain but as soon as I set to anything else. I want the Post name option, it just gives me ' no results found' or 'WordPress site - coming soon'

Author
Muhammad Irfan

December 14 2024

when i use domain.com/%category%/%postname%/ it works fine but when i use domain.com/blog/%category%/%postname%/ it goes to 404 page. how to fix this issue?

Leave a reply

Please fill the required fields.Please accept the privacy checkbox.Please fill the required fields and accept the privacy checkbox.

Thank you! Your comment has been successfully submitted. It will be approved within the next 24 hours.