近期計劃建立一個資源分享平台,原本考慮使用 FTP,但覺得操作不夠便捷。於是決定直接利用 Apache 的 Indexes 功能搭建一個可瀏覽目錄的虛擬主機,優勢在於能直接在瀏覽器中以網頁形式展示文件列表。
然而,按照 Apache 官方文檔配置後卻出現問題。經過測試發現,當目錄包含中文文件或中文目錄時,在 IE 瀏覽器下會顯示亂碼。查看頁面編碼發現,Apache 默認使用 ISO-8859-1 編碼,手動切換到 GB2312 後即可正常顯顯示。顯然是 Apache autoindex 模組在處理中文編碼時存在問題。
深入研究官方文檔後發現,可以在 Apache 配置文件中為 Indexes 指定特定字符集。具體解決方法如下:
在 Apache 配置文件(httpd.conf)中添加以下指令:
IndexOptions Charset=GB2312
重啟 Apache 服務後,即可徹底解決 autoindex 模組中文亂碼問題。若服務器環境使用 UTF-8 編碼,也可將該值改為 Charset=UTF-8 以適應現代 Web 標準。