Skip to main content

404 Not Found error in Joomla: Causes and how to fix it

· 3 min read
Customer Care Engineer

Joomla-404-Not-Found-error-message-and-how-to-fix-broken-links-or-missing-pages-step-by-step

Error 404 Not Found on the site running on Joomla means that the requested page can not be found. Visitors often get to it from search engines, outdated links, or even from the menu of the site itself. The reasons can range from a deleted article to routing issues.

In this article, we will explain why error 404 appears in Joomla and how to quickly eliminate it.


What 404 means in Joomla

A 404 error is the standard response from the server when it cannot find the requested page. In Joomla, this usually happens because:

  • The content item has been deleted or unpublished.

  • The menu structure is broken.

  • The component responsible for rendering the page is not working.


Primary causes of a 404 error in Joomla

  1. Content deleted or unpublished

If an article, category, or component is removed but a menu or module still links to it, Joomla returns a 404.

  1. Menu item points to a non-existent target

Even if the article exists, a menu item linked to a missing category or incorrect route will trigger the error.

  1. SEF (search-engine-friendly) URL problems

Joomla’s SEF links depend on component routes. After a site migration, enabling SEO, or changing aliases, “broken” links can appear.

  1. Errors during site migration

Moving to a new domain or host can change the URL structure and make some pages inaccessible.

  1. Component missing in the URL

For example, a link like index.php?option=com_k2&view=item&id=1 will fail if the K2 component is not installed.


How to fix a 404 in Joomla

  1. Check the menu item

Go to MenuMain Menu and verify that the item points to an existing article, category, or component. Re-create the menu item if needed.

  1. Regenerate SEF URLs
  • In the admin panel, open Global ConfigurationSiteSEO Settings.

  • Confirm that SEF URLs and URL rewriting are enabled.

  • Clear the cache: SystemClear Cache.

  • If you use an extension like sh404SEF or JoomSEF, update or reset its SEF table.

  1. Check .htaccess

To enable SEF (Search Engine Friendly) URLs, URL rewriting must be active. Make sure the .htaccess file is present in your site's root directory and that it includes the following directives to enable mod_rewrite:

RewriteEngine On

RewriteBase /

For more information about the default .htaccess structure in Joomla, check out this article.

  1. Enable error reporting

For debugging, turn on error output:

  • Go to SystemGeneral SettingsServer.

  • Set Error Messages: Maximum.

Joomla will then show a more detailed message that will help you find the cause of the error.

  1. Look at the error log

Most hosters provide an Apache error log. Look for lines with a 404 status code to identify problematic URLs.

If you use FASTPANEL: open the site card → Logs → check Backend access log and Frontend access log tabs to see which address triggered the 404 and the request origin. This helps trace broken links.

  1. Configure redirects

If the page was deleted, but you want to keep traffic from external links, create a redirect. In Joomla it is done through the component “Redirects”:

  • Navigate to ComponentsRedirects.

  • Enable it in Options if disabled.

  • Add the old URL and the new path (without the domain).


How to prevent 404 errors in the future

  • Do not delete content without adding a redirect.

  • Audit menus after moving or unpublishing items.

  • Use the Redirects component or .htaccess to manage redirections.

  • Monitor 404 errors via Google Search Console.


Conclusion

Error 404 in Joomla - a common phenomenon, but quite solvable. In most cases, it can be eliminated in 5-10 minutes by checking the menu, SEF settings, and site structure. Adding a reliable redirect system eliminates the risk of traffic loss on remote pages.