OK I'm using two .htaccess files for a site that has the blog in its own directory outside the root.
Place this code into the .htaccess file located in the root of your domain.
Code:
RewriteEngine on
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /([^/]*/)*index\.htm? [NC]
RewriteRule ^(([^/]*/)*)index\.htm?$ http://www.yourdomain.com/$1[R=301,L]
RewriteCond %{HTTP_HOST} ^yourdomain\.com [NC]
RewriteRule ^(.*)$ http://www.yourdomain.com/$1 [R=301,L]
Notice how the file extentsion is .htm - change this to reflect the type of extension you are using in the root i.e. html or php etc.
This is the code I'm using the .htaccess file located in the root of the /blog/ directory:
Code:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /blog/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /blog/index.php [L]
</IfModule>
Give that a shot and see what happens.