perryhg 回復于:2004-08-13 07:41:03 |
默認的httpd.conf盡量不要動,除非你要改 Listen端口。
建議使用虛擬主機設置。 [code:1:2996c5709a]NameVirtualHost *:8080 <VirtualHost *:8080> ServerAdmin aaa@aa.com DocumentRoot "d:/webs" ServerName localhost ErrorLog logs/default_vhost_err.txt CustomLog logs/default_vhost_aclearcase/" target="_blank" >cc.txt common Alias /dy/ "g:/" Alias /lxj/ "e:/" </VirtualHost>[/code:1:2996c5709a] AddDefaultCharset 和 DefaultLanguage 都不要設置,看看會否影響你。是在不行,到 "D:/Program Files/Apache Group/Apache2/logs" 下面看看 default_vhost_err.txt 看看里面到底發生什么錯誤 |
kimli22 回復于:2004-08-13 13:31:18 |
照你的方法改了目前的配置文件 - 故障依舊
改回原始配置文件 - 故障依舊 用你的方法改了原始文件 - 故障依舊 55555555555555555555555555 |
kimli22 回復于:2004-08-13 13:56:36 |
我的問題和這個基本相同,他們討論的很詳細.問題就在編碼那塊,但我不知具體該如何做?請大俠們賜教
http://www.phpx.com/happy/showthread.php?s=cd38da156f566ff0e6bfd24824297c2d&threadid=78157&perpage=15&pagenumber=1 |
kimli22 回復于:2004-08-13 14:12:49 |
網際快車的信息
英文地址(可以下載): [code:1:cfa66a76a2]Fri Aug 13 14:08:52 2004 正在連接 202.102.48.62 [IP=202.102.48.62:8080] Fri Aug 13 14:08:52 2004 已連接. Fri Aug 13 14:08:52 2004 GET /dy/01.rmvb HTTP/1.1 Fri Aug 13 14:08:52 2004 Host: 202.102.48.62:8080 Fri Aug 13 14:08:52 2004 Accept: */* Fri Aug 13 14:08:52 2004 Referer: http://202.102.48.62:8080/dy Fri Aug 13 14:08:52 2004 User-Agent: Mozilla/4.0 (compatible; MSIE 5.00; Windows 98) Fri Aug 13 14:08:52 2004 Pragma: no-cache Fri Aug 13 14:08:52 2004 Cache-Control: no-cache Fri Aug 13 14:08:52 2004 Connection: close Fri Aug 13 14:08:52 2004 HTTP/1.1 200 OK Fri Aug 13 14:08:52 2004 Date: Fri, 13 Aug 2004 06:07:57 GMT Fri Aug 13 14:08:52 2004 Server: Apache/2.0.50 (Win32) Fri Aug 13 14:08:52 2004 Last-Modified: Tue, 27 Jul 2004 14:42:26 GMT Fri Aug 13 14:08:52 2004 ETag: "885-c7f9255-1c3b160c" Fri Aug 13 14:08:52 2004 Accept-Ranges: bytes Fri Aug 13 14:08:52 2004 Content-Length: 209687125 Fri Aug 13 14:08:52 2004 Connection: close Fri Aug 13 14:08:52 2004 Content-Type: application/vnd.rn-realmedia Fri Aug 13 14:08:52 2004 Content-Language: zh-CN Fri Aug 13 14:08:52 2004 開始接受數據![/code:1:cfa66a76a2] 中文地址的出錯信息: [code:1:cfa66a76a2]Fri Aug 13 14:13:47 2004 正在連接 202.102.48.62 [IP=202.102.48.62:8080] Fri Aug 13 14:13:47 2004 已連接. Fri Aug 13 14:13:47 2004 GET /dy/電影/0517_韓國2424_大智和尚上傳/韓國2424.rm HTTP/1.1 Fri Aug 13 14:13:47 2004 Host: 202.102.48.62:8080 Fri Aug 13 14:13:47 2004 Accept: */* Fri Aug 13 14:13:47 2004 Referer: http://202.102.48.62:8080/dy/電影/0517_韓國2424_大智和尚上傳 Fri Aug 13 14:13:47 2004 User-Agent: Mozilla/4.0 (compatible; MSIE 5.00; Windows 98) Fri Aug 13 14:13:47 2004 Pragma: no-cache Fri Aug 13 14:13:47 2004 Cache-Control: no-cache Fri Aug 13 14:13:47 2004 Connection: close Fri Aug 13 14:13:47 2004 HTTP/1.1 404 Not Found Fri Aug 13 14:13:47 2004 Date: Fri, 13 Aug 2004 06:12:51 GMT Fri Aug 13 14:13:47 2004 Server: Apache/2.0.50 (Win32) Fri Aug 13 14:13:47 2004 Content-Length: 326 Fri Aug 13 14:13:47 2004 Connection: close Fri Aug 13 14:13:47 2004 Content-Type: text/html; charset=iso-8859-1 Fri Aug 13 14:13:47 2004 有錯誤發生![/code:1:cfa66a76a2] |
kimli22 回復于:2004-08-13 14:16:54 |
問題明了了,就是英文地址正常,中文地址只有瀏覽器可以識別(可以另存為),下載工具和播放器都不能識別,大俠們救救小弟! |
perryhg 回復于:2004-08-14 06:44:04 |
正確的部分
Fri Aug 13 14:08:52 2004 Content-Type: application/vnd.rn-realmedia Fri Aug 13 14:08:52 2004 Content-Language: zh-CN 出錯的部分 Fri Aug 13 14:13:47 2004 Content-Type: text/html; charset=iso-8859-1 Fri Aug 13 14:13:47 2004 有錯誤發生! 好像是和字符集設置有關 AddDefaultCharset Off DefaultLanguage 不要設置 |
wingger 回復于:2004-08-14 07:14:03 |
亂碼問題:
(1)服務器端: 修改httpd.conf (在Redhat中放置的位置為/etc/httpd/conf/) 查找: AddDefaultCharset ISO-8859-1 改成: 代碼: #AddDefaultCharset ISO-8859-1 AddDefaultCharset off ] 這種方式關掉了服務器的默認語言的發送,這樣僅憑html文件頭中設置的語言來決定網頁語言。 很多文章都說通過修改為 AddDefaultCharset GB2312 把缺省語言改成GB2312來解決中文亂碼,確實GB2312內碼的網頁可以正常顯示了,但這并非萬全之策。因為當你的網頁內碼不是GB2312,就算你在網頁用下面的meta指定了正確的語言,如ISO8859-1,也不會解碼為ISO8859-1,因為Apache已經先你一步將GB2312指定為網頁的語言了, (2)養成良好的習慣,在每個網頁的<head></head>的最前面加入這行: 代碼: <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 一般的中文版網頁編輯工具(例如FrontPage、Dreamweaver等)都會自動加上這行。 3、如何解決中文文件名無法訪問 代碼: 在ie中選擇 工具 -> internet選項 -> 高級 -> 取消“總是以UTF-8發送URL”。 |
kimli22 回復于:2004-08-14 13:39:26 |
按照上面兩位大俠的解答,小弟重新設置了字符集,問題依舊。
現在情況就是:下載工具和播放器只能識別unicode,比如 http://202.102.48.62:8080/dy/%e4%ba%8b%e5%ae%9e.rm 把上面的地址復制到下載工具或REALONE一切正常。 此地址原名: http://202.102.48.62:8080/dy/事實.rm |
kimli22 回復于:2004-08-14 22:33:18 |
%e4%ba%8b%e5%ae%9e
這一串是什么格式的字符?是不是unicode? |
liuzh28 回復于:2004-08-15 13:33:06 |
apache 1.3.27 所有文件名都用英文,我的可以. |
kimli22 回復于:2004-08-15 16:17:40 |
。。。我要解答??!大俠們,你們都哪里去了???555555 |
perryhg 回復于:2004-08-15 18:35:16 |
[code:1:ff40fb7d5c]按照上面兩位大俠的解答,小弟重新設置了字符集,問題依舊。
現在情況就是:下載工具和播放器只能識別unicode,比如 http://202.102.48.62:8080/dy/%e4%ba%8b%e5%ae%9e.rm 把上面的地址復制到下載工具或REALONE一切正常。 此地址原名: http://202.102.48.62:8080/dy/事實.rm[/code:1:ff40fb7d5c] 既然下載工具和realone都正常了,你還有什么問題? 在瀏覽器的“工具”->選項->高級 里面,選擇“總是以UTF-8發送URL”問題即可解決,flashget應該會自動轉換的。 |
kimli22 回復于:2004-08-15 20:57:56 |
不好意思,樓上兄臺誤解了。
這種地址:http://202.102.48.62:8080/dy/%e4%ba%8b%e5%ae%9e.rm可以正常訪問。 但實際上我們的地址是這種:http://202.102.48.62:8080/dy/事實.rm 如果想用下載工具和播放器訪問"事實.rm"這個文件,就必須要先把它轉化成“%e4%ba%8b%e5%ae%9e.rm”現在的問題就是如何轉換這兩種字符串了。 |
kimli22 回復于:2004-08-15 21:10:07 |
唉,討論這么多天,竟然發現自己的問題是現在網上普遍存在的。URL中提交中文參數就會出錯。。需要找一段編碼轉換公式。 |
bdw 回復于:2004-08-16 00:30:09 |
<?php
$str="url"; $str=urlencode($str); echo $str; ?> |
kimli22 回復于:2004-08-17 23:08:26 |
多謝樓上!
不知道可不可以在APACHE中設置支持? |
kimli22 回復于:2004-08-18 20:57:08 |
樓上二層兄臺給的方法偶早試過了,得出的代碼不一樣...
原文: 事實.rm 得出的是:%CA%C2%CA%B5.rm 應該是: %e4%ba%8b%e5%ae%9e.rm |
kimli22 回復于:2004-08-19 14:25:51 |
多謝各位幫忙,小弟已解決此問題,代碼如下。有相同問題解決不了的朋友可以問問我,也許我能給點建議
<? $inString=$_GET["aaaa"]; $inString=urlencode(iconv( 'gb2312', 'utf-8', $inString )); $inString=str_replace("%3A",":",$inString); $inString=str_replace("%2F","/",$inString); echo $inString; ?> |
Redian 回復于:2004-09-23 11:35:52 |
[quote:7f47b28432="kimli22"]
$inString=urlencode(iconv( 'gb2312', 'utf-8', $inString )); $inString=str_replace("%3A",":",$inString); $inString=str_replace("%2F","/",$inString); echo $inString; ?>[/quote:7f47b28432] 這段是什么意思啊,我也遇到同樣的問題了,請介紹具體的設置。 |