Skocz do zawartości

Apache/php + Polskie Ogonki


lszk

Rekomendowane odpowiedzi

W httpd.conf mam

DefaultLanguage pl
AddDefaultCharset iso-8859-2

a w php.ini

default_charset = "iso-8859-2

 

W plikach zarówno php, jak i html mam wpis

<meta http-equiv="Content-type" content="text/html; charset=iso-8859-2" />

ale i tak nie ma polskich znaczków :unsure:

Odnośnik do komentarza
Udostępnij na innych stronach

na fedorce masz kodowanie UTF-8 a w konfigu apacha(czy czego tam uzywasz) wpisales ze uzywasz kodowania ISO8859-2 wiec, aby wyswietlalo strony prawidlowo, dokumenty na serwerze musisz tworzyc w standardzie ISO8859-2,

 

P.S. moze latwiej bedzie zmienic kodowanie w httpd.conf na UTF8? to zalezy czy dokumenty tworzysz na fedore i wtedy sa w standardzie utf8 czy na innym systemi gdzie uzywa sie innego kodowania

Odnośnik do komentarza
Udostępnij na innych stronach

Polecam też sprawdzić plik

/etc/php.ini

A w nim linię z

;default_charset = "iso-8859-2"

Może tam być też co innego, kiedyś o tym zapomniałem i... (długa historia :) )

(_acha_ → aha) ORT, lepiej żeby tam był średnik, tak IMO jest bezpieczniej, jak by Ci kiedyś przyszła do głowy zmiana na UTF-8 jednak.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 4 years later...

Postanowiłem odświeżyć temat bo mam ten sam problem. Strony pisałem na Windowsie wiec są w iso-8859-2, kodowanie w nich ustawione tez jest iso-8859-2. Fedorkę mam standardowo na utf-8 i apacha miałem ustawionego na utf-8 wiec zmieniłem w httpd.conf linijki

 

DefaultLanguage pl

AddDefaultCharset iso-8859-2

 

w pliku php.ini zmieniłem default_charset = "iso-8859-2 ale to nic nie dało. Dalej ogonki się nie wyświetlają. Jak wyczytałem z tego topica najlepszym rozwiązaniem była by zmiana kodowania na utf-8 ale tego zrobić nie chce. Zamiana polskich ogonków na krzaczki ( ¶ ± itp.) też nie wchodzi w grę. Jak inaczej można to zrobić?

Odnośnik do komentarza
Udostępnij na innych stronach

Witam,

 

Proponowałbym jednak pozostać przy UTF-8. Gdzieś czytałem, że standard ISO ma być wycofywany z użytku na korzyść UTF właśnie. Jak tylko znajdę oryginalne źródło to podrzucę linka.

 

Pozdrawiam,

Esail

 

@Zagiewa

man iconv

Odnośnik do komentarza
Udostępnij na innych stronach

Już dawno wszyscy mówili o tym żeby rezygnować z iso-8859-2 na korzyść UTF-8 i też jestem za ale z uwagi na to, że jedna ze stron jest na tyle rozbudowana, że zmienianie w każdym pliku kodowania trochę by potrwało. Jeśli nie znajdę rozwiązania to będę musiał tak zrobić. Z ciekawości i dla pewności chciałem sprawdzić czy plik .php stworzony na Linuksie z kodowaniem utf-8 zadziała - no i działa, krzaczki (_znikły_ → zniknęły) ORT więc na pewno jest to pewne rozwiązanie.

Odnośnik do komentarza
Udostępnij na innych stronach

LanguagePriority en ca cs da de el eo es et fr he hr it ja ko ltz nl nn no pl pt pt-BR ru sv zh-CN zh-TW

 

ustaw priorytet na

pl en ca cs da de el eo es et fr he hr it ja ko ltz nl nn no pt pt-BR ru sv zh-CN zh-TWl

 

żeby pl był na 1. miejscu - może pomoże. Miałem kiedyś identyczny problem ale zapomniałem jak go rozwiązałem;)

Odnośnik do komentarza
Udostępnij na innych stronach

Problem rozwiązany :D Już tłumaczę. Jak pisałem wcześniej strony zapisane z kodowaniem utf-8 działały a te z iso-8859-2 nie. Wystarczyło edytować jeden plik httpd.conf i zmienić tam następujące linijki:

 

# DefaultLanguage nl

na

# DefaultLanguage pl

 

LanguagePriority en ca cs da de el eo es et fr he hr it ja ko ltz nl nn no pl pt pt-BR ru sv zh-CN zh-TW

na

LanguagePriority pl en ca cs da de el eo es et fr he hr it ja ko ltz nl nn no pt pt-BR ru sv zh-CN zh-TW

 

a następnie cały ten fragment usunąć:

#
# Specify a default charset for all content served; this enables
# interpretation of all content as UTF-8 by default. To use the
# default browser choice (ISO-8859-1), or to allow the META tags
# in HTML content to override this choice, comment out this
# directive:
#
AddDefaultCharset UTF-8

a w jego miejsce wstawić to:

#
# Specify a default charset for all pages sent out. This is
# always a good idea and opens the door for future internationalisation
# of your web site, should you ever want it. Specifying it as
# a default does little harm; as the standard dictates that a page
# is in iso-8859-1 (latin1) unless specified otherwise i.e. you
# are merely stating the obvious. There are also some security
# reasons in browsers, related to javascript and URL parsing
# which encourage you to always set a default char set.
#
#AddDefaultCharset ISO-8859-2

#
# Commonly used filename extensions to character sets. You probably
# want to avoid clashes with the language extensions, unless you
# are good at carefully testing your setup after each change.
# See http://www.iana.org/assignments/character-sets for the
# official list of charset names and their respective RFCs.
#
AddCharset ISO-8859-1  .iso8859-1 .latin1
AddCharset ISO-8859-2  .iso8859-2 .latin2 .cen
AddCharset ISO-8859-3  .iso8859-3 .latin3
AddCharset ISO-8859-4  .iso8859-4 .latin4
AddCharset ISO-8859-5  .iso8859-5 .latin5 .cyr .iso-ru
AddCharset ISO-8859-6  .iso8859-6 .latin6 .arb
AddCharset ISO-8859-7  .iso8859-7 .latin7 .grk
AddCharset ISO-8859-8  .iso8859-8 .latin8 .heb
AddCharset ISO-8859-9  .iso8859-9 .latin9 .trk
AddCharset ISO-2022-JP .iso2022-jp .jis
AddCharset ISO-2022-KR .iso2022-kr .kis
AddCharset ISO-2022-CN .iso2022-cn .cis
AddCharset Big5        .Big5       .big5
# For russian, more than one charset is used (depends on client, mostly):
AddCharset WINDOWS-1251 .cp-1251   .win-1251
AddCharset CP866       .cp866
AddCharset KOI8-r      .koi8-r .koi8-ru
AddCharset KOI8-ru     .koi8-uk .ua
AddCharset ISO-10646-UCS-2 .ucs2
AddCharset ISO-10646-UCS-4 .ucs4
AddCharset UTF-8       .utf8

# The set below does not map to a specific (iso) standard
# but works on a fairly wide range of browsers. Note that
# capitalization actually matters (it should not, but it
# does for some browsers).
#
# See http://www.iana.org/assignments/character-sets
# for a list of sorts. But browsers support few.
#
AddCharset GB2312      .gb2312 .gb 
AddCharset utf-7       .utf7
AddCharset utf-8       .utf8
AddCharset big5        .big5 .b5
AddCharset EUC-TW      .euc-tw
AddCharset EUC-JP      .euc-jp
AddCharset EUC-KR      .euc-kr
AddCharset shift_jis   .sjis

I już wszystko działa. Tylko jest jeden haczyk... po tej zmianie strony w iso-8859-2 będą wyświetlane poprawnie (z polskimi ogonkami) natomiast strony w utf-8 już nie. Dzięki za pomoc :)

Odnośnik do komentarza
Udostępnij na innych stronach

Cos mi sie zdaje, ze nie do konca doczytales co oznacza # na poczatku linijki?... ;)

 

A wiec - moze Ci sie to przyda na przyszlosc - wszystkie linie zaczynajace sie od # sa ignorowane (po tym znaku umieszcza sie komentarze lub wartosci przykladowe / domyslne ale nie wlaczone).

 

Wiec Twoja zmiana:

# DefaultLanguage nl

na

# DefaultLanguage pl

tak naprawde nie zmienila nic w konfiguracji i nie miala wplywu na dzialanie aplikacji... :ph34r:

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

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

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
×
×
  • Dodaj nową pozycję...