This article explains how to enable Search Engine friendly URLs using rewrite rules on Windows XP Joomla 2.5 installation. We decided to add this article, after we gave up on setting up SEO URL with rewrite when we were working with Joomla 1.5. After reviewing lot of blogs and sites, we consolidated and tried to add this to prevent the time loss involved in setting this up. The article assumes that Joomla 2.5 has already been installed and is up and running. This should also work for Joomla 1.6 or 1.7.
Admin Console Settings
- Login to your Admin console of Joomla 2.5 installation
- Click the Global Configuration
- Select the settings as indicated in the below screenshot.
By select 'No' in option two and three, you will still be getting 'semi-SEO friendly' urls like:
http://localhost/joomla25/index.php/getting-started
But you will be stuck with index.php in all your pages
By selecting 'Yes' in option two and 'No' for option three, you will get URLs like
http://localhost/joomla25/getting-started
By selection 'Yes' to option two and three, you will get URLs like the pages are static html pages:
http://localhost/joomla25/getting-started.html
Inside the <Directory> tag ensure the following tags:
Options Indexes FollowSymLinks
AllowOverride All
Allow from all
The complete section is pasted below:
<Directory "C:/Apache2.2/htdocs">
#
# Possible values for the Options directive are "None", "All",
# or any combination of:
# Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
#
# Note that "MultiViews" must be named *explicitly* --- "Options All"
# doesn't give it to you.
#
# The Options directive is both complicated and important. Please see
# http://httpd.apache.org/docs/2.2/mod/core.html#options
# for more information.
#
Options Indexes FollowSymLinks
#
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
# Options FileInfo AuthConfig Limit
#
AllowOverride All
#
# Controls who can get stuff from this server.
#
Order allow,deny
Allow from all
</Directory>
Add entry in httpd.conf to point to the htaccess file. You can either use the default htaccess.txt using the below entry:
AccessFileName htaccess.txt
Or
AccessFileName .htaccess
The above line will have to be added to the end of the httpd.conf.
For renaming htaccess.txt in the root of the Joomla 2.5 installation folder, you will have to do it through the command prompt.
After performing the above changes to httpd.conf, restart Apache server and retest.
.htaccess modifications
The default .htaccess configurations should work. However, if you still get 404 errors, try the following modification in htaccess
Uncomment RewriteBase.
RewriteBase /joomla25
Point to the location in which Joomla 2.5 is installed. Restart Apache Server and retest.