• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 515
  • Last Modified:

What is the best way to redirect old Internet Explorer users to a new page?

Hello,

I've been searching and not yet found a good solution that just works, quickly. In the past I've had a div that is hidden and if IE 8 or before it is set to be visible and covers the rest of the site beneath with a warning upgrade message.

I want a better solution where the user is just sent to a different page altogether.

I've tried loads of suggestions I've found online and none other than the one below have worked for me.

<!--[if lt IE 9]><meta http-equiv="refresh" content="0;URL=http://mysite.com/update.php"><![endif]-->

This one  does work, though it is slow, the page seems to render before this redirect occurs. So older IE users see the page kind of load but not look as it should, then redirect. I obviously don't want them seeing this, I just want the redirect to be instant.



Can anyone help me with the best way to achieve this please?

Thanks :)
0
igloobob
Asked:
igloobob
  • 9
  • 7
1 Solution
 
leakim971PluritechnicianCommented:
What about using mod_rewrite ?
Check the Browser Dependent Content section here :
https://httpd.apache.org/docs/trunk/rewrite/remapping.html

RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} .*MSIE.*
RedirectMatch ^/$ update.php
DirectoryIndex index.php

Open in new window

0
 
igloobobAuthor Commented:
That looks great thanks. That goes into an .htaccess file then I take it? Also, this line

RewriteCond %{HTTP_USER_AGENT} .*MSIE.*

 looks like it is targeting all versions of IE, can I target specific versions? I want all below version 9 to redirect, 9 and above is fine to display the normal page.
0
 
leakim971PluritechnicianCommented:
.*MSIE.* is a regular expression

So this regular expression should workd for you : MSIE\s[5-8]\.

RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} MSIE\s[5-8]\.
RedirectMatch ^/$ update.php
DirectoryIndex index.php

Open in new window

0
What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

 
igloobobAuthor Commented:
Hi leakim

thanks for the swift reply!

I've added that into an .htaccess file but it isn't working, the index.php page is loading?

RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} MSIE\s[5-8]\.
RedirectMatch ^/$ update.php
DirectoryIndex index.php
0
 
leakim971PluritechnicianCommented:
This work fine for me :
<IfModule mod_rewrite.c>
RewriteEngine On
Options +FollowSymlinks -MultiViews

RewriteCond %{HTTP_USER_AGENT} ^.*(MSIE\s[5-8]\..*) [NC]
RewriteRule ^(.*)$ /update.php [L,R=302,NC]

</IfModule>

Open in new window

0
 
igloobobAuthor Commented:
hmm, I get this now (when viewing in Chrome),

[an error occurred while processing this directive]

and in IE (7) I get:

The requested URL /update.php was not found on this server.

The file is there. The whole site is in a development sub folder if that makes any difference?

mysite.com/dev/test/..all site files are here...
0
 
leakim971PluritechnicianCommented:
did you see my previous message?
0
 
igloobobAuthor Commented:
Hi, yes, it was after using what you posted in that last reply that I got the above happening
0
 
igloobobAuthor Commented:
Hi again Leakim, slight update, not sure what happened before but the page is loading correctly in Chrome / Firefox / IE 9+ etc

In the older IE versions (using IE tester) I am getting the webpage cannot be found message.
0
 
leakim971PluritechnicianCommented:
and the url is?
0
 
igloobobAuthor Commented:
Hi Leakim,

it's password protected as it's a development site. Can I send you the log in privately?
0
 
leakim971PluritechnicianCommented:
no, it's not allowed

the url used is : http://www.yourdomain.com/update.php

be sure to have update.php in the root folder
0
 
igloobobAuthor Commented:
Ah OK so this won't work until I move the site to the root then? I'll test it then when the site is ready to go live. Currently it's all in the sub dev folder.

The .htaccess file is on that dev folder with all the site files so would have thought it would still work.
0
 
igloobobAuthor Commented:
I probably need a few more days to a week to get the new site finished then will test this again in root and report back here.
0
 
leakim971PluritechnicianCommented:
for your test, provide the full path to the update.php folder FROM THE ROOT

/full/path/from/root/to/update.php
0
 
igloobobAuthor Commented:
OK great thanks I'll do that now..
0

Featured Post

How to Use the Help Bell

Need to boost the visibility of your question for solutions? Use the Experts Exchange Help Bell to confirm priority levels and contact subject-matter experts for question attention.  Check out this how-to article for more information.

  • 9
  • 7
Tackle projects and never again get stuck behind a technical roadblock.
Join Now