How to Troubleshoot Joomla SEF URLs

In "The Complete Guide to Joomla Search Engine Friendly URLs," you learned how to make your Joomla URLs easy-to-remember and easy-to-use.

This will help your site in the eyes of both human visitors and search engines.

In this blog post, we are going to give you some troubleshooting tips, in case you would like to set up the search engines friendly URLs exactly how you want.

There are many reasons why search engines URLs may not work. If you're URLs are not working correctly, you're likely to see 404 - Not Found pages that look like this:

404 page not found error page

If you are in such a situation, there are quite a few things that you can do.

  • The first thing you should do is to go back to your system's Global Configuration area.
  • Locate the SEO Settings section and set the Use URL Rewriting option to No.

use url rewriting to no

That has a much greater degree of tolerance for different servers and there is a chance that it may work.

If that works for you,  you clicked No, clicked Save and got your URLs working, then you will be able to see some nice clean URLs. The only change will be that you will have index.php in your URL, which is not the end of the world.

If you want to move index.php from your URL, you are going to make some changes to your .htaccess file, if it hasn't worked for you before.

One thing that Joomla documentation does is to provide a perfect example of what the .htaccess file should look like by default.

If you go to docs.joomla.org site, there is a document there called "Preconfigured htaccess". It has a complete and full .htaccess default file.

preconfigured htaccess txt file

It's normal for some hosting companies to insert their own .htaccess file onto the server. What you want to do is to replace that file with the Joomla file.

Copy what is on docs.joomla.org site. Then edit the .htaccess file, delete what is in there, and replace it with what you copied on docs.joomla.org site.

With this change that you made, go to Global Configuration, click that second Search Engine Friendly URLs button and check to see whether your URLs have index.php removed.

Beyond that, one of the most common problems we see is that this doesn't always work if your Joomla site is in a folder.

Look inside the .htaccess file. There is a line that says RewriteBase.

Often, when you change this line, that would help Joomla understand that your site is not in the main part of your hosting server.

For example, if you have your Joomla site in a folder called /folder, you can change this one line in the .htaccess file, to tell Joomla exactly where your site is hosted. There is a good chance that this may work.

Undoing the second of the two Search Engines Friendly URLs settings can help. And so can using the default Joomla .htaccess file from the docs.joomla.org site. And so can changing the RewriteBase option inside the .htaccess file.

Beyond that, you may want to check with your hosting company problems that you have. Some hosting companies may have their own setups that only their support can help you with.

It's also worth noting, that the Search Engines Friendly URLs can be difficult to set if you are using Joomla on your computer on a local server. Particularly - on PCs.

They like to hide or cause problems with files that have dots in front of their names. So, setting a site using the .htaccess file can be a problem.

Search Engines Friendly URLs are a really useful thing to have on your site but they may take a little bit of configuration and a little bit of troubleshooting to set up correctly.

Additional Reading

Would you like to learn more about how to create great websites with Joomla? Join the Joomlashack Everything Club and instantly download the "Joomla 3 Explained" bestselling book by Steve Burge.


About the author

Born from a Ukrainian mother and Russian father, Alex lives in the United Kingdom. Alex is a self-taught Microsoft Certified Professional. He enjoys learning Joomla and helping web site administrators make the most of it.