Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: ie6 htaccess
Forum PHP.pl > Forum > Serwery WWW
Papub
Witam serdecznie,
Czy ma ktoś może regułę do wpisania w htaccess żeby przekierowywało na inną podstronę jeżeli wykryje ie6? Bo mam parę wersji ale albo mi wyskoczy internal server error albo tak długo muli jak wchodzę z ie6 na stronę.
erix
Pokaż, co Ci konkretnie nie działa.
Papub
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} "MSIE 6"
RewriteRule (.*) http://www.strona.pl/ie.html
erix
u mnie działa?
Papub
mam user switcher do FF i jak zmienię na ie6 pokazuje mi komunikat

Nieprawidłowe przekierowanie
Firefox wykrył, że serwer przekierowuje żądanie tego zasobu w sposób uniemożliwiający jego ukończenie.
* Problem ten może się pojawić w wyniku zablokowania lub odrzucenia ciasteczek.
thek
I dobrze robi jeśli www.strona.pl jest na tym serwisie co htaccess smile.gif Popatrz co się wtedy dzieje. Wchodzisz. Wykrywa IE6, przekierowuje na stronę podaną. Na niej znów jest ten htaccess, a więc znów usera wyłapuje i kręci nim jak idiotą w kółko. Najprościej będzie jeśli wychwycisz jako kolejny warunek skąd user przyszedł. Jeśli z tej samej strony, czyli http://www.strona.pl/ie.html to niech go nie przerzuca. Lub zapisując to "po ludzku"
JEŚLI user_agent to IE6 ORAZ strona z jakiej się przyszło JEST RÓŻNA OD http://www.strona.pl/ie.html PRZEKIERUJ http://www.strona.pl/ie.html (ale tylko i wyłącznie wtedy a dodatkowo może przerwać wykonywanie pozostałych reguł)
Papub
Dobrze zauważyłeś.

Zrobiłem coś takiego... Ale internal server error smile.gif

RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} "MSIE 6"

RewriteCond %{HTTP_HOST} ^strona\.pl [NC]
RewriteCond %{QUERY_STRING}!^ie.html$

RewriteRule (.*) http://www.strona.pl/ie.html
thek
Od kiedy %{QUERY_STRING} odpowiada za stronę z jakiej nastąpiło przejście? Mnie się zawsze wydawało, że %{HTTP_REFERER} winksmiley.jpg
Papub
Specjalistą od htaccess nie jestem smile.gif co nie zmienia faktu że internal server error tongue.gif
thek
Jeśli masz więc zgadywać to może sobie daruj i zamieść to jako skrypt dodany na wszystkich podstronach poza tą jedną od strony php zamiast w htaccess winksmiley.jpg Jeśli jednak jesteś uparty to lepiej sobie wyświetl te zmienne i zobacz jak wyglądają a nie zgaduj jakie wyrażenie regularne trzeba tam wkleić. Poza tym zdarza się na niektórych serwisach, że wymagany jest conajmniej jeden Enter po ostatniej regule by htaccess załapał.
Papub
może masz racje. Po co czarować smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.