Greetings,

I've just moved an internet site from IIS to Apache and am getting just a little trouble redirecting the index file without leading to an infinite loop.

These two individually may cause a loop-

Redirect 301 /index.htm /index.php

Redirect 301 /index.htm http://www.foo.com/

Below is really a copy of my current .htaccess. Can someone assist me to? I've got a couple of links pointed to http://www.foo.com/index.htm that I must 301 redirect to http://www.foo.com/

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|\.cfm|/[^.]*)$  [NC]
RewriteRule (.*) index.php
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
#
########## End - Joomla! core SEF Section

Redirect 301 /a /administrator

The reason for carrying this out? Why don't you add index.php for your vhost/config like a valid index extension

DirectoryIndex index.html index.php

After which remove the HTML file>

or

DirectoryIndex index.php

I suppose you've your directory index set to index.html, also it happens before index.php. Your http://www.foo.com/ is construed as http://www.foo.com/index.html, which is rerouted to http://www.foo.com/ - hence the loop.

Here you have some information on redirects the diffrent ways.

To be sure with Kender's comment concerning the redirect loop. Probably the way round that's to possess

DirectoryIndex notindex.html

together with your redirects, then place the actual top of the page in notindex.html. I am not obvious wrong with individuals using /index.html in the event that page really is available?

I am not permitted to include hyperlinks yet, as I am a new user, then when I have typed "foo" just assume thats the whole URL...

To redirect foo/index.php to foo/ with no loop, use another rewrite rule:

RewriteRule index.php foo/ [R=301]

You will need to make use of /index.php based on what your RewriteBase is placed as (and just how many sites you possess an index.php in).