2012-03-28 13 views
0

Im Versuch zu umleiten wenige Browser auf eine Seite mit .htaccess umleiten, die ihren Browser vorschlagen würden, zu aktualisieren, und ich kann es heraus mit der .htaccess-Datei aus:.htaccess Verwendung veralteten Browser

Derzeit verwende ich:

RewriteCond %{HTTP_USER_AGENT} "MSIE 6" 
RewriteCond %{REQUEST_URI} !^/ie/ 

aber das überträgt nur Internet Explorer 6. Wie kann ich weitere Browser hinzufügen und wo finde ich ihre user_agent Namen? Ich habe diesen Artikel online: http://evansims.com/6032/using-htaccess-to-redirect-obsolete-browsers/, die dies legt nahe:

RewriteCond %{HTTP_USER_AGENT} "Opera/3" [or] 
RewriteCond %{HTTP_USER_AGENT} "Opera/2" [or] 
RewriteCond %{HTTP_USER_AGENT} "Opera/1" [or] 
RewriteCond %{HTTP_USER_AGENT} "Safari/4" [or] 
RewriteCond %{HTTP_USER_AGENT} "Safari/3" [or] 
RewriteCond %{HTTP_USER_AGENT} "Safari/2" [or] 
RewriteCond %{HTTP_USER_AGENT} "Safari/1" [or] 
RewriteCond %{HTTP_USER_AGENT} "Navigator/" [or] 
RewriteCond %{HTTP_USER_AGENT} "MSIE 6" [or] 
RewriteCond %{HTTP_USER_AGENT} "MSIE 5" [or] 
RewriteCond %{HTTP_USER_AGENT} "MSIE 4" [or] 
RewriteCond %{HTTP_USER_AGENT} "MSIE 3" [or] 
RewriteCond %{HTTP_USER_AGENT} "MSIE 2" [or] 
RewriteCond %{HTTP_USER_AGENT} "MSIE 1" 
RewriteRule . upgrade.html [L] 

aber es scheint nicht, für mich zu arbeiten. Gibt es eine Website, die eine Liste mit den HTTP-Benutzeragenten in großen Mengen bereitstellt? Zum Beispiel, wenn ich Firefox 3.0 sage, bedeutet dies alle Versionen einschließlich 3.6

Diese Website: http://www.useragentstring.com/pages/Firefox/ hat Hunderte von Benutzer-Agenten, die ich ziemlich sicher bin, gibt es eine Möglichkeit, alle von ihnen in einer Zeile zu integrieren? (Wie IE6,7 Firefox 1 bis 3 (einschließlich 3.6), Opera 1 bis 10 usw.)

+0

Hat meine Antwort nicht funktioniert? – baynezy

Antwort

0

diesen Beitrag anzeigen: Mobile or desktop browser detection and redirect to respective web page

Können Sie es tun mit PHP oder anderen Backend statt? Das Folgende ist für die mobile Erkennung, aber Sie können leicht Ihre eigene Benutzeragentenliste eingeben. Wenn die Bedingung erfüllt ist

<?php 
$useragent=$_SERVER['HTTP_USER_AGENT']; 
if(preg_match('/android|avantgo|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|opera m(ob|in)i|palm(os)?|phone|p(ixi|re)\/|plucker|pocket|psp|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i',$useragent)||preg_match('/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s)|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp(i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac(|\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt(|\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg(g|\/(k|l|u)|50|54|e\-|e\/|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(di|rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v)|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v)|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-|)|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|xda(\-|2|g)|yas\-|your|zeto|zte\-/i',substr($useragent,0,4))) 
// insert php redirect code here 
?> 
1
RewriteCond %{HTTP_USER_AGENT} Opera/[1-3] [OR] 
RewriteCond %{HTTP_USER_AGENT} Safari/[1-4] [OR] 
RewriteCond %{HTTP_USER_AGENT} Navigator/ [OR] 
RewriteCond %{HTTP_USER_AGENT} MSIE [1-6] 
RewriteRule .? upgrade.html [L] 

Dies sollte besser funktionieren.

1

@ Jeff

kann nicht verwendet werden [1-15], denn das sagt 1 bis 1 oder 5

Sie müssen wie etwas verwenden, [1-9], die 1 bis 9. Sie bedeutet kann in einem solchen Bereich keine zweistelligen Ziffern verwenden.

So würden Sie es wie so tun müssen:

RewriteCond %{HTTP_USER_AGENT} Firefox/[1-9][0-5]?\. [NC,OR] 

[1-9] [0-5]?

Mittel 1 bis 9, mit oder ohne 0 bis 5

Verwandte Themen