Skocz do zawartości
Zaloguj się, aby obserwować  
Mich@ł

kodowanie znaków na php włączonym poprzez htaccess

Polecane posty

Wrzuciłem dzisiaj na serwer "drugą" wersje php (konkretnie 5.3) i jako typ wybrałem suphp. Apache chodzi ok, PHP 5.3 również... ale nie działa kodowanie znaków a konkretnie na stronie z kodowaniem ISO mam krzaki :/

 

http://statusek.54.pl/

 

W czym może być problem?

 

Z tego co widzę apache na suphp nie bierze pod uwagę meta tagu "charset".

 

 

Problem występuje również w trybie php-fpm więc problemem jest pewnie apache 2.4, tylko dlaczego pod domyślna wersja php jest wszystko ok, a przy wersji "odpalanej" z htaccess się kaszani kodowanie :/

Edytowano przez Mich@ł (zobacz historię edycji)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Gość l3szcz
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=iso-8859-2" />

Kolego, zmień to na

<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" />

W czym robisz stronę? Jaki to program?

Edytowano przez l3szcz (zobacz historię edycji)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Po pierwsze masz niespójność dwóch pozycji.

W nagłówkach HTTP masz podane:

Content-Type: text/html; charset=UTF-8

A w źródle HTML:

<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=iso-8859-2" />

Dla większości przeglądarek treść nagłówków HTTP będzie miała raczej pierwszeństwo.

 

Większość osób zapewne zaleci konwersję wszystkich dokumentów na UTF-8, co na dłuższą metę jest właściwym rozwiązaniem. Ale jako że i ja też nadal dla części swoich stron używam ISO-8859-2 i wiem, że konwersja wielu plików może zająć trochę czasu, to podpowiem, że zamiast grzebać w ustawieniach każdego kolejnego serwera jakiego teraz lub w przyszłości będziesz używał, ustaw odpowiednie kodowanie wewnątrz swojego skryptu PHP:

<?php header('Content-Type: text/html; charset=ISO-8859-2'); ?>
ALBO
<?php header('Content-Type: text/html; charset=UTF-8'); ?>
Edytowano przez Piotr GRD (zobacz historię edycji)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Dzięki panowie za pomoc ;)

 

Ustawienie:

header('Content-Type: text/html; charset=ISO-8859-2');

pomogło ;)

 

Zmiana kodowania plików raczej nie ma większego sensu ;) Ta strona ma już prawie 9 lat i to bardziej sentyment niż serwis, w który opłacało by się inwestować ;)

 

Tylko ciekawi mnie dlaczego na innym serwerze nie pluło się o kodowanie. Tam też mam Apache 2.4 i PHP 5.3 tyle, że jako domyślne.

 

 

 

 

Zmiana kodowania plików niestety nie ma zbytnio sensu

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Bądź aktywny! Zaloguj się lub utwórz konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto

Zarejestruj nowe konto, to proste!

Zarejestruj nowe konto

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się

Zaloguj się, aby obserwować  

×