2012-07-11 25 views
3

我想我的Apache 2.2.14服務器上我的網頁越來越UTF-8文本文件,以顯示在所有瀏覽器

http://www.gmarks.org/math_in_e-mail.txt 

在所有平臺上的所有瀏覽器中正確顯示(或東西接近這一點)。  我已包含該行

AddDefaultCharset utf-8 

在相應的.htaccess文件中。  但是,我發現在我自己的機器上運行Ubuntu 10.04,該頁面完全按照我希望的方式僅在Google Chrome瀏覽器中顯示。  在其他瀏覽器中的問題:在Opera中,最後兩行不顯示,在Firefox中,下標 aleph ’ s太小,在rekonq中,最後兩行顯示不正確,各種Fraktur字符重複顯示,其他顯示不正確,在Midori Opera和Firefox都出現問題,在Arora的Firefox和rekonq都出現問題時,在Epiphany出現Opera問題。

還有什麼我可以放在我的.htaccess文件中,或者我可能設置的其他一些配置,讓網頁在任何地方都能正確顯示?  我想我必須依靠每個用戶在他或她的計算機上安裝的字體設置(顯然它違背了網頁的目的使用類似GIF圖像的東西)。  我發現瀏覽器之間的差異很奇怪:每個瀏覽器在某個配置文件中是否包含自己的一組字體,還是會訪問某個包含整個計算機字體的目錄?  (而且是在回答最後一個問題依賴於操作系統的?)

另外的問題:我會做的更好,我的.htaccess文件來改變行

AddCharset UTF-8 .txt 

,是有辦法,我可以使默認情況下使用增加的字體大小顯示.txt文件?

回答

3

瀏覽器不會知道文本是UTF-8編碼,除非文本以UTF-8 BOM(假設瀏覽器甚至可以查找)或HTTP頭指定UTF-8作爲字符集,即: Content-Type: text/plain; charset=utf-8。如果AddCharset告訴Apache爲.txt文件生成該屬性,那麼很好。

無法爲.txt文件自行指定字體。你必須爲此使用HTML。要爲.txt文件指定一種字體,您必須編寫一個服務器端腳本,該腳本將圍繞.txt文件內容輸出HTML包裝,然後設置HTTP Content-Type標題以指定text/html而不是text/plain作爲數據類型。