請教如何讓apache server能接受中文名稱檔案的請求?【求助】



贊助商連結


頁 : 1 2 [3] 4

mus000
2004-06-10, 01:27 AM
感謝。原來是 Apache 2.0 的功能差異。
嗯,多學了一課。

贊助商連結


linux_xp
2004-06-10, 02:14 AM
跟apache server沒什麼關係,那是OS的問題

server端的OS,有沒有辦法處理繁體中文
client端的OS,有沒有辦法處理繁體中文

兩項條件,一個不成立,就變亂碼了

一般說的繁體中文,是BIG-5
另一種選擇是UTF-8國際碼

把檔名弄成UTF-8格式,就能國際通用了
但有些人OS不支援UTF-8,例如:win-9x,所以還是沒用

BIG-5在台灣是比較通用的
不過一些新版Linux或是unix-base的OS,已經全面支持UTF-8
例如:Fedora下跑BIG-5檔名會有問題

國外的主機,OS在安裝時,99%不可能安裝BIG-5支援
上傳BIG-5檔名,肯定變成亂碼

寫網頁的好習慣,還是用英文命名檔案比較好
並且統一小寫,這樣才可跨平台

emilee
2004-06-10, 10:16 AM
會使用中文的檔案名稱,有時也是不得以的...
因為有一些會員管理程式,會把每一個會員的資料,以會員名稱建一個檔案來儲存..
而會員名稱又不限於只有英文,有的人會用中文來註冊
所以就會有server能不能讀取中文檔案名稱的問題了..!

況且,身為一個server管理者,你不可能叫所有終端使用者去變更他自己的電腦設定來上你的網站..
所以如果你要架站的話還是用Linux相容性比較好,如果真的要用windows + apache來架的話apache請不要用2.0版以後的(除非這問題解決了),用1.3.xx版的apache
IIS下我就不曉得有沒有這個問題了..?

mus000
2004-06-10, 11:27 AM
最初由 linux_xp 發表
跟apache server沒什麼關係,那是OS的問題


Apache 2.0 在 win2000 上處理中文檔名的表現,跟 Apache 1.3.x 在 win2000 的表現已經不同了。

Apache 2.0 + win2000 -> IE 必須選擇 url 使用 utf-8 傳送。
Apache 1.3.x + win2000 -> IE 必須取消 url 使用 utf-8 傳送。

這跟 Apache 沒關?? 跟 OS 有關?
OS 都是 win2000 ,差異是??

PS: OS 造成的差異是一定有關的。

琥珀
2004-06-10, 06:15 PM
選擇永遠以 utf-8 傳送。

http://santa.sytes.net/%A4%A4%A4%E5%BDd%A8%D2.txt
http://action.sytes.net/%E4%B8%AD%E6%96%87%E7%AF%84%E4%BE%8B.txt

emilee
2004-06-10, 06:26 PM
只要檔案名成改為%E4%B8%AD%E6%96%87%E7%AF%84%E4%BE%8B.txt
這個樣子,不管IE設為什麼什麼...都可以正常讀取的..!

現在討論的是中文檔案名稱的問題...不是IE能不能顯示中文的問題..!!

琥珀
2004-06-11, 12:19 AM
也測試這個網址看看。一時找不到許多以非英數命名的路徑/檔案名。

請按這裡 (http://home.hanmir.com/~ma791222/bank/음악가사/遠いこの街で(머나먼이거리에서).htm) 網頁的編碼不正確,無妨。

mus000
2004-06-11, 12:41 AM
最初由 琥珀 發表
也測試這個網址看看。一時找不到許多以非英數命名的路徑/檔案名。

請按這裡 (http://home.hanmir.com/~ma791222/bank/음악가사/遠いこの街で(머나먼이거리에서).htm) 網頁的編碼不正確,無妨。

我猜想你是想找一些只有在使用 IE 開起 utf-8 傳送功能時,才會正常顯示的網頁吧?

這個問題就是上面一大串在討論的。
最後的決定,還是要看架站的人,看它怎麼考量了。
如果架站人的人,選擇了 win2000 + Apache 2.0 來架站,那麼,他就必需告知他的使用者,記得把 utf-8 傳送 url 功能打勾。

如果選擇了使用 Apache 1.3.x + OS(win2000或Linux)來架站,那麼他就必需告知他的使用者就必須將 utf-8 傳送 url 功能取消。

目前這是一個選擇題,就看架站者怎麼考量而已。

mus000
2004-06-11, 12:44 AM
也許以後 Apache 2.x.x 功能會再進化,那時就變成 Apache 2.x.x 可以調整設定的問題了。

琥珀
2004-06-11, 11:32 AM
想了一整晚,發現這問題和 MyIE2 網址列...搜尋變亂碼的解決方法 (http://www.pczone.com.tw/showthread.php?t=123098) 本質上是相同的意思、目的。

如果網頁內容真的很重要,網頁撰寫者自然就知道不能用中文名,這是目前最佳的解決方案。而不是使用了中文檔名,然後才開始抱怨作業系統/瀏覽器/網頁伺服器支援中文名有問題。畢竟作業系統/瀏覽器/網頁伺服器才是主人。從使用者的觀點來看,應該設法去配合作業系統,而不是想盡辦法去修改系統核心。

http://santa.sytes.net/中文範例.txt
當輸入這樣的網址,瀏覽器(IE)會將網址解釋為此種格式。如果以 utf-8 傳送 URL 的話。
http://santa.sytes.net/%E4%B8%AD%E6%96%87%E7%AF%84%E4%BE%8B.txt (UTF-8)
否則,就解釋為此種格式。如果不使用 utf-8 傳送 URL & 繁體版系統語言設定。
http://santa.sytes.net/%A4%A4%A4%E5%BDd%A8%D2.txt (ANSI-Big5)

同理。看瀏覽器(IE)如何設定,就如何去解釋網址。
http://action.sytes.net/中文範例.txt
http://action.sytes.net/%E4%B8%AD%E6%96%87%E7%AF%84%E4%BE%8B.txt (UTF-8)
http://action.sytes.net/%A4%A4%A4%E5%BDd%A8%D2.txt (ANSI-Big5)