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] 这段是什么意思啊,我也遇到同样的问题了,请介绍具体的设置。 |