21.31. Windows 網址列不能使用中文檔名?

Windows 網址列不能使用中文,應該是 IE 的 URL 轉碼設定造成的。 按造下面的步驟修改看看:

工具(T) -> 網際網路選項(O) -> 進階

裡面有個 永遠將 URL 傳送成 UTF-8 (需要重新啟動) 的選項,把勾取消後,按確定並將 IE 關掉重開。

不過仍然不建議網站的檔名使用中文,在 RFC 內文件規範, 非 7bit 的 url 應該就是要 url encoding 成為 7bit 再傳送。 所以既然如此,每個 web server 一定都支援 url encoding 後的解碼。

如果以 UTF-8 的方式傳輸 "中文",無法抓到網頁,會得到:

GET %E4%B8%AD%E6%96%87 HTTP/1.1

如果關閉 UTF-8 的方式傳輸 "中文",可以抓到網頁,會得到:

GET \xa4\xa4\xa4\xe5 HTTP/1.1

不過如果以 Mozilla 瀏覽器傳輸 "中文",可以抓到網頁,會得到:

GET %A4%A4%A4%E5 HTTP/1.1

也就是說當開啟 UTF-8 的方式傳輸時,會先將網址轉成 UTF-8 的格式, 在以 url encoding 後的結果傳輸,但是關閉的時候,雖然以原來的編碼傳輸, 但是卻沒有做 url encoding。 雖然關閉 UTF-8 的方式傳輸可以讀取到部分中文檔案, 可是仍然有許多檔名是無法讀取的, 因此還是不要以中文作為網頁儲存的檔案,圖檔也是。

WWW: RFC 1738