O charset padrão do Apache não funciona

1

Estou tentando definir o conjunto de caracteres padrão para ISO-8859-1, portanto, adicionei a linha abaixo no httpd.conf.

AddDefaultCharset ISO-8859-9

e posso ver esse valor quando eu o consultar com

root@server [/]# curl -A "Mozilla/4.0" http://localhost -I
HTTP/1.1 200 OK
Date: Mon, 10 Sep 2012 22:28:48 GMT
Server: Apache
Last-Modified: Tue, 21 Aug 2012 21:17:25 GMT
Accept-Ranges: bytes
Content-Length: 111
Content-Type: text/html; charset=ISO-8859-1

No entanto, não consigo obter os mesmos resultados para hosts virtuais e não há definições adicionais para nenhum outro conjunto de caracteres.

root@server [/]# file temp.php
temp.php: ISO-8859 text

root@server [/]# cat temp.php    
Cesária Évora

root@server [/]# curl -A "Mozilla/4.0" http://somedomain/temp.php -I
HTTP/1.1 200 OK
Date: Mon, 10 Sep 2012 22:28:31 GMT
Server: Apache
Content-Type: text/html; charset=utf-8

Você tem alguma ideia? Por favor, deixe-me saber se você tem uma pista.

Obrigado.

    
por Tim 11.09.2012 / 00:40

1 resposta

1

O atributo charset em Content-Type para PHP é tratado por php.ini .

Adicione default_charset = iso-8859-1 ao seu php.ini ou use ini_set( "default_charset", "iso-8859-1" ) no seu temp.php . link

    
por 11.09.2012 / 01:21