Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> wykrywanie jezyka systemu i przeglądarki
buczer
post 19.01.2010, 10:01:27
Post #1





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 9.04.2008

Ostrzeżenie: (0%)
-----


witam
mam 2 strony internetowe. jedną w języku polskim a drugą taką samą z tymże w kilku językach obcych.
Chciałbym zablokować dostęp do polskiej strony osobą z zagranicy.
Zrobiłem to na podstawie języka przeglądarki użytkownika
Kod
$_SERVER['HTTP_ACCEPT_LANGUAGE']

ale ten sposób nie jest dobry ponieważ wiele osób w Polsce ma ustawiony w przeglądarce język inny niż polski i automatycznie nie wejdzie na stronę polską.
Może dobrym sposobem było by sprawdzenie języka przeglądarki, a następnie języka systemu operacyjnego. tylko nie wiem w jaki sposób wykryć język systemu operacyjnego.
Macie może jakiś pomysł jak rozwiązać ten problem.
Go to the top of the page
+Quote Post
nospor
post 19.01.2010, 10:04:31
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




No najlepiej jakbyś sprawdzał po IP. Jest wiele baz które mowią z jakiego kraju pochodzi dane IP


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
vokiel
post 19.01.2010, 10:12:51
Post #3





Grupa: Zarejestrowani
Postów: 2 592
Pomógł: 445
Dołączył: 12.03.2007

Ostrzeżenie: (0%)
-----


Nagłówek Accept-Language jest dobry do ustawienia wersji językowej strony. Nawet jeśli źle zadziała nic się nie stanie, do blokowania dostępu niestety się nie nadaje. Nawet jeśli zadziała poprawnie, to wystarczy, że ktoś się zorientuje, przestawi i już zabezpieczenie można o kant kuli pobić.


--------------------
Go to the top of the page
+Quote Post
buczer
post 19.01.2010, 10:39:00
Post #4





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 9.04.2008

Ostrzeżenie: (0%)
-----


myślałem o sprawdzania IP ale zastanawiam sie jaki procent polaków nie dostanie się na stronę polską
Ja wiem ze te bazy się rozrastają ale nie zawierają wszystkich numerów ip
Go to the top of the page
+Quote Post
pp-layouts
post 19.01.2010, 18:56:31
Post #5





Grupa: Zarejestrowani
Postów: 53
Pomógł: 1
Dołączył: 28.09.2007
Skąd: Gdynia

Ostrzeżenie: (0%)
-----


Jak ktoś sobie zmienił domyślny język w przeglądarce, to znaczy, że ma podstawowe pojęcie o obsłudze przeglądarki, a nawet najprawdopodobnie wie, do czego służy opcja którą zmienił i co się z tym wiążę. Jak ktoś nie potrafi obsługiwać komputera / przeglądarki - to prawdopodobnie ma standardową przeglądarkę ze standardowym systemem, czyli na 99,99% będzie miał ustawiony swój domyślny język (bo z reguły będzie to osoba nie znająca innego języka).

Mój framework używa HTTP_ACCEPT_LANGUAGE do obsługi modułu i18n, który automatycznie ładuje wersje językowe napisów aplikacji. Ustawianie języka w przeglądarce jest dobre, bo można sobie łatwo przetestować jak będzie wyglądała strona w różnych językach. Dodatkowo umożliwia pozbycie się wyboru wersji językowej z interfejsu.

Jeśli chodzi o zabezpieczanie: "don't be evil". Blokowanie dostępu ze względu na państwo jest złe. Wymuszanie języka lub wersji językowej ze względu na lokalizację jest IMHO nieeleganckie i niepraktyczne, bo pomyśl o całej masie naszych rodaków w UK, którzy być może woleliby polską wersję językową. Lub o gościach zza granicy, którzy z polskiej kafejki internetowej wejdą sobie na tą stronę. Ustawienie przeglądarki to IMHO najlepsza metoda - bo domyślnie przeglądarka jest prawie zawsze ustawiona na właściwy język. Mnóstwo międzynarodowych serwisów używa tej techniki, jak zmienisz język w przeglądarce, zauważysz. Najważniejsze jest jednak to, że pomimo "preselekcji" użytkownik zawsze ma wybór.

Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 15.07.2025 - 05:15