Bugshooting Search Engine Friendly URLs in Joomla 2.5
Sometimes Joomla URLs can be tricky to set up and this tutorial will show you how to bugshoot problems with them in Joomla 2.5.
Installations on your computers are particularly problematic and my advice would be "don't worry about Search Engine Friendly URLs on your computer". After all, search engines don't index your computer.
Here are some possible solutions if you are having URL problems on your live server:
How Do You Know You Have a Problem?
It will be hard to miss if you have Joomla URL problems. Your site might look normal:
But if you click on any of the links, you'll get an error message:
Go to the administrator area of your Joomla site and click on Global Configuration:
Set "Search Engine Friendly URLs" to No. Then check your site again to see if this has resolved the problem.
That will solve the probem in the short-term.
If you do want to keep bugshooting the URLs, follow these next steps:
#2: .htaccess file
Next we're going to test the file that is essential for Search Engine Friendly URLs: .htaccess.
First, we need to login and see our files. In this example we're going to use CPanel which is the same hosting software we use in Joomla Explained.
Start by logging into your CPanel:
Find and click the "File Manager":
Make absolutely sure that you click the "Show Hidden Files (dotfiles)." box. Otherwise you might not be able to find the .htaccess file because some systems will hide it from view.
Find your Joomla files. They will look like the image below. Scroll down and find the .htaccess file.
Select that file and click "Edit" at the top of the page. A new screen will open like this. It might not look 100% the same, but it should look very, very close.
So what happens if either you don't have any .htaccess file or yours looks nothing like this?
We need to download a copy of the file from Joomla.org. Head there and download a fresh copy of Joomla 1.7:
Download the Joomla 1.7 files and extract them. You're looking for htaccess.txt:
Back in your CPanel File Manager, click Upload.
Browse and upload the htaccess.txt file that you just found.
Once it's uploaded, select the file, click Rename and rename it to .htaccess (Rename any existing .htaccess files to something like .htaccess-backup)
#3 Check Your Server
Edit your .htaccess files and place only these lines inside:
RewriteRule ^joomla\.html http://www.joomla.org/? [R=301,L]
Now point your browser to: http://www.example.com/joomla.html (replacing example.com with your URL)
If it redirects you to joomla.org then mod_rewrite is working. If it gives you an error then mod_rewrite is not working.
#3: Working with Your Host
If the .htaccess file didn't help, my next advice you would be to talk to your host and ask them about URL rewriting.
If at all possible, use one of the hosts recommended here if possible: http://www.ostraining.com/hosting/. Some bad hosts and some hosts such as GoDaddy and Network Solutions are notorious for URL problems with all sorts of websites.