Hmmm...I might just have fixed it myself!
For Apache, the current Revolution documentation suggests using the following:
# Friendly URLs Part
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} .
# Force all pages to go to www.mydomain.co.uk for SEO
RewriteCond %{HTTP_HOST} !^www\.mydomain\.co.uk [NC]
RewriteRule (.*) http://www.mydomain.co.uk/$1 [R=301,L]
# Friendly URLs
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
# Additional Settings Follow
ExpiresActive On
ExpiresByType image/gif A2592000
ExpiresByType image/jpeg A2592000
ExpiresByType image/png A2592000
BrowserMatch "MSIE" brokenvary=1
BrowserMatch "Mozilla/4.[0-9]{2}" brokenvary=1
BrowserMatch "Opera" !brokenvary
SetEnvIf brokenvary 1 force-no-vary
Now, I’m not sure of the purposes of:
# Additional Settings Follow
ExpiresActive On
ExpiresByType image/gif A2592000
ExpiresByType image/jpeg A2592000
ExpiresByType image/png A2592000
BrowserMatch "MSIE" brokenvary=1
BrowserMatch "Mozilla/4.[0-9]{2}" brokenvary=1
BrowserMatch "Opera" !brokenvary
SetEnvIf brokenvary 1 force-no-vary
or just how important these rules are, but without them, that script works just fine, for both the front end and the back end.
So in my .htaccess with ISAPI_Rewrite 3, I have:
# Helicon ISAPI_Rewrite configuration file
# Version 3.1.0.69
# Friendly URLs Part
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} .
# Force all pages to go to www.mydomain.co.uk for SEO
RewriteCond %{HTTP_HOST} !^www\.mydomain\.co.uk [NC]
RewriteRule (.*) http://www.mydomain.co.uk/$1 [R=301,L]
# Friendly URLs
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
And obviously where it states ’mydomain’ you need to change that to your own domain.
But this is whats working for me right now. Hopefully I won’t run into too many issues with it!!
Thanks everyone for your help, and if you can shed some light on the importance of those other rules, please let me know.
Thanks