2013年8月3日 星期六

讓Apache2順利讀取中文檔名

學務系統之應用已深植本校網站及行政業務,但因其編碼支援為big5,而非現今主流--utf8,而且同仁在使用時仍喜歡中文檔名或資料夾,造成瀏覽器無法讀取問題,或者必須進一步設定才能順利讀取中文檔名或路徑。
今天上網時,無意間發現原來只要設定好apache,就能解決這個困擾。
一、要安裝mod-encoding模組:
  • sudo apt-get update
    sudo apt-get install libapache2-mod-encoding
ps.安裝完libapache2-mod-encoding後,並沒有自動產生encoding.conf檔

二、增加encoding.conf設定檔
    vi /etc/apache2/mods-available/encoding.conf 
  • 輸入下列內容:
    <IfModule mod_encoding.c>
    EncodingEngine on
    NormalizeUsername on
    SetServerEncoding Big5
    DefaultClientEncoding Big5 UTF-8
    AddClientEncoding "(Microsoft .* DAV $)" Big5 UTF-8
    AddClientEncoding "Microsoft .* DAV" Big5 UTF-8
    AddClientEncoding "Microsoft-WebDAV*" Big5 UTF-8
    </IfModule> 
三、設定encoding.load及encoding.conf連結
    cd /etc/apache2/mods-enabled
    ln -s ../mods-available/encoding.load
    ln -s ../mods-available/encoding.conf
    ps.也可以下a2enmod encoding指令
四、重新啟動apache
    /etc/init.d/apache2 restart
五、這樣apache就可順利讀取中文檔名或路徑了。


參考網站:
 webadmin of ymes

延深閱讀:
Apache2的模組化功能

沒有留言:

張貼留言