The point of this post is very simple. To get search engine friendly URL’s to work with Joomla 1.5.4.
Make sure you have a .htaccess or htaccess.txt file in the root directory of your Joomla install. If it is called htaccess.txt you must rename it!
Make sure your .htaccess content is current. As of July 27. 2008 it looks like the below pasted text.
Login to the back-end of Joomla
You should see the grid below (it may look a little different since I am using a theme) click on Global Configuration.

The point of this post is very simple. To get search engine friendly URL’s to work with Joomla 1.5.4.

  1. Make sure you have a .htaccess or htaccess.txt file in the root directory of your Joomla install. If it is called htaccess.txt you must rename it!
  2. Make sure your .htaccess content is current. As of July 27. 2008 it looks like the below pasted text.
  3. Login to the back-end of Joomla
  4. You should see the grid below (it may look a little different since I am using a theme) click on Global Configuration.
  5. Note the blue hi-lighted section under SEO settings. Make sure both Search Engine Friendly URLs and Use Apache mod_rewrite radio buttons are yes. Now click save and everything should work!
Joomla 1.5.4 Control Panel

Joomla 1.5.4 Control Panel

Control Panel for Global Configuration settings

The following is copied from the default htaccess file, as of this date.

##

# @version $Id: htaccess.txt 10492 2008-07-02 06:38:28Z ircmaxell $

# @package Joomla

# @copyright Copyright (C) 2005 – 2008 Open Source Matters. All rights reserved.

# @license http://www.gnu.org/copyleft/gpl.html GNU/GPL

# Joomla! is Free Software

##

#####################################################

#  READ THIS COMPLETELY IF YOU CHOOSE TO USE THIS FILE

#

# The line just below this section: ‘Options +FollowSymLinks’ may cause problems

# with some server configurations.  It is required for use of mod_rewrite, but may already

# be set by your server administrator in a way that dissallows changing it in

# your .htaccess file.  If using it causes your server to error out, comment it out (add # to

# beginning of line), reload your site in your browser and test your sef url’s.  If they work,

# it has been set by your server administrator and you do not need it set here.

#

#####################################################

##  Can be commented out if causes errors, see notes above.

Options +FollowSymLinks

#

#  mod_rewrite in use

RewriteEngine On

########## Begin – Rewrite rules to block out some common exploits

## If you experience problems on your site block out the operations listed below

## This attempts to block the most common type of exploit `attempts` to Joomla!

#

# Block out any script trying to set a mosConfig value through the URL

RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR]

# Block out any script trying to base64_encode crap to send via URL

RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [OR]

# Block out any script that includes a <script> tag in URL

RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]

# Block out any script trying to set a PHP GLOBALS variable via URL

RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]

# Block out any script trying to modify a _REQUEST variable via URL

RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})

# Send all blocked request to homepage with 403 Forbidden error!

RewriteRule ^(.*)$ index.php [F,L]

#

########## End – Rewrite rules to block out some common exploits

#  Uncomment following line if your webserver’s URL

#  is not directly related to physical file paths.

#  Update Your Joomla! Directory (just / for root)

# RewriteBase /

########## Begin – Joomla! core SEF Section

#

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteCond %{REQUEST_URI} !^/index.php

RewriteCond %{REQUEST_URI} (/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$  [NC]

RewriteRule (.*) index.php

RewriteRule .* – [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]

#

########## End – Joomla! core SEF Section

credit: ravemac