Da questa discussione sul forum italiano di gentoo, mi sono sorti dei dubbi sulla configurazione dell'encoding in Firefox, dal momento che questa è suddivisa in diversi menu e in alcuni casi le voci presenti in questi ultimi non sono chiarissime ( almeno per me ;) ).
Dopo aver girovagato un pò per il web, credo di essere riuscito a chiarirmi le idee e dal momento che non ho trovato molta documentazione in proposito ho deciso di buttare giù due righe per i posteri.
WARNING: Partiamo dal presupposto che tutte le informazioni contenute in questo post non sono da ritenersi una verità assoluta dal momento che potrei anche non aver capito nulla ;).
Partendo dal menu:
Edit -> Preferences -> "Fonts & Colors"
cliccando sul bottone [Advanced], alla voce "Default Character Encoding" è possibile selezionare la codifica di default nel caso in cui il server web che stiamo visitando non ce ne proponga una. Questa si traduce nell'opzione di configurazione (basta digitare in nuovo tab about:config):
"intl.charset.default"
Un server web può proporre una codifica in due modi distinti:
- Attraverso un header http
- Attraverso il meta tag html "Content-Type", contenuto nell'html della pagina web che stiamo richiedendo.
Vediamo in dettaglio ciascuno dei due casi.
1 - Attraverso un headers http
Come di può vedere dall'estratto della comunicazione tra client (firefox) e server web, il client richiede una pagina web elencando le sue preferenze per quanto concerne l'encoding (ISO-8859-15 come prima scelta e utf-8 come seconda nel caso in cui la prima codifica non sia disponibile):
Il server risponde:
cioè informa il client che le informazioni che sta ritornando sono un testo html codificato in utf-8.
2 - Attraverso il meta tag html "Content-Type"
In questo caso tra i meta tag della pagina html troveremo qualcosa del tipo:
E' anche possibile selezionare:
View -> Character Encoding -> Auto-Detect -> Universal
nel caso in cui si voglia lasciare a firefox la possibilità di indovinare la codifica.
Nel caso in cui la codifica scelta da firefox per la pagina corrente non sia quella corretta è possibile selezionarne una ( che varrà solo per la sessione corrente ) dal menu:
View -> Character Encoding -> More Encodings
Nel menu View -> Character Encoding sono presenti alcune codifiche che possono essere selezionate senza necessità di accedere ai sottomenu che si raggiungiungono da View -> Character Encoding -> More Encodings. L'elenco precdente è contenuto nella variabile
intl.charsetmenu.browser.static
è può essere modificato da:
View -> Character Encoding -> Customize List
Dopo aver girovagato un pò per il web, credo di essere riuscito a chiarirmi le idee e dal momento che non ho trovato molta documentazione in proposito ho deciso di buttare giù due righe per i posteri.
WARNING: Partiamo dal presupposto che tutte le informazioni contenute in questo post non sono da ritenersi una verità assoluta dal momento che potrei anche non aver capito nulla ;).
Partendo dal menu:
Edit -> Preferences -> "Fonts & Colors"
cliccando sul bottone [Advanced], alla voce "Default Character Encoding" è possibile selezionare la codifica di default nel caso in cui il server web che stiamo visitando non ce ne proponga una. Questa si traduce nell'opzione di configurazione (basta digitare in nuovo tab about:config):
"intl.charset.default"
Un server web può proporre una codifica in due modi distinti:
- Attraverso un header http
- Attraverso il meta tag html "Content-Type", contenuto nell'html della pagina web che stiamo richiedendo.
Vediamo in dettaglio ciascuno dei due casi.
1 - Attraverso un headers http
Come di può vedere dall'estratto della comunicazione tra client (firefox) e server web, il client richiede una pagina web elencando le sue preferenze per quanto concerne l'encoding (ISO-8859-15 come prima scelta e utf-8 come seconda nel caso in cui la prima codifica non sia disponibile):
GET / HTTP/1.1
Host: www.linuxhardware.org
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.0.7) Gecko/20060917 Firefox/1.5.0.7
Accept: text/xml,application/xml,application/xhtml+xml ...
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-15,utf-8;q=0.7,*;q=0.7 <----
Keep-Alive: 300 Connection: keep-alive
Il server risponde:
HTTP/1.x 200 OK
Date: Mon, 16 Oct 2006 16:09:44 GMT
Server: Apache/1.3.34 (Unix) (Gentoo) mod_perl/1.29 PHP/5.1.6-pl4-gentoo mod_ssl/2.8.25 OpenSSL/0.9.8d
X-Powered-By: Slash 2.002006
X-Fry: They're great! They're like sex except I'm having them.
Cache-Control: no-cache
Pragma: no-cache
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Transfer-Encoding: chunked
Content-Type: text/html; charset=utf-8 <----
cioè informa il client che le informazioni che sta ritornando sono un testo html codificato in utf-8.
2 - Attraverso il meta tag html "Content-Type"
In questo caso tra i meta tag della pagina html troveremo qualcosa del tipo:
<meta equiv="content-type" content="text/html;charset=iso-8859-15">
E' anche possibile selezionare:
View -> Character Encoding -> Auto-Detect -> Universal
nel caso in cui si voglia lasciare a firefox la possibilità di indovinare la codifica.
Nel caso in cui la codifica scelta da firefox per la pagina corrente non sia quella corretta è possibile selezionarne una ( che varrà solo per la sessione corrente ) dal menu:
View -> Character Encoding -> More Encodings
Nel menu View -> Character Encoding sono presenti alcune codifiche che possono essere selezionate senza necessità di accedere ai sottomenu che si raggiungiungono da View -> Character Encoding -> More Encodings. L'elenco precdente è contenuto nella variabile
intl.charsetmenu.browser.static
è può essere modificato da:
View -> Character Encoding -> Customize List
No comments:
Post a Comment