QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3528|回复: 16

求助:如何建立http下载服务器

[复制链接]
发表于 2004-9-23 10:35:10 | 显示全部楼层 |阅读模式
抱歉问个Windows下的问题。因为我这里是小区宽带,应该属于内网,做ftp的话外网的人无法访问,http就可以,想请问如何能够类似magiclinux的个人文件那样提供http下载服务?

多谢
发表于 2004-9-23 11:00:53 | 显示全部楼层
http默认只要不是浏览器或插件的文件格式以及在设置中特意规定的文件格式,在web服务器文件目录下的所有文件均可实现下载,比如在windows的IIS下不以.htm、.html、.asp、.pdf等等为后缀文件均可下载。
回复

使用道具 举报

 楼主| 发表于 2004-9-23 11:39:19 | 显示全部楼层
这个我知道的。我的意思是能够把我想共享的目录里的文件列出来,类似http://www.magiclinux.org/people/yourfeng/
回复

使用道具 举报

发表于 2004-9-23 11:56:47 | 显示全部楼层
WINDOWS下的不知道,LINUX下可以,配置一下httpd.conf即可。
回复

使用道具 举报

 楼主| 发表于 2004-9-23 12:53:11 | 显示全部楼层
怎么配置能不能说来听听?我看看是什么原理,或许会对windows下有帮助
回复

使用道具 举报

发表于 2004-9-23 13:09:10 | 显示全部楼层
去除掉网页文件的定义不就行了。
DirectoryIndex和specified extensions
回复

使用道具 举报

 楼主| 发表于 2004-9-24 02:15:10 | 显示全部楼层
多谢bwb,问题解决了一部分,如果你不嫌麻烦的话,继续探讨

去掉DirectoryIndex后就可以直接显示目录下的内容了。但还有一点,除了这个主目录之外,我还想添加另外的目录,比如e:\movie,应该直接把e:\movie目录复制或剪切到主页目录下就行了。但我不想为了提供下载而改变我的目录结构。可有办法象ftp里那样的建立虚拟目录,然后对虚拟目录的操作联接到e:\movie去?

多谢
回复

使用道具 举报

发表于 2004-9-24 07:01:55 | 显示全部楼层
Alias /somename/  "e:/movie/"
回复

使用道具 举报

 楼主| 发表于 2004-9-24 10:41:05 | 显示全部楼层
alias不是windows下的命令吧,还是要在配置文件里指定?
回复

使用道具 举报

 楼主| 发表于 2004-9-25 19:19:15 | 显示全部楼层
多谢bmb和dannycat,经常多次摸索和测试,终于搞定,可以用浏览器正常访问了。

但在实践中发现几个问题,想请教一下:
1. alias目录必须是英文名,中文名不能显示内容,但英文目录下的中文目录和中文文件名都可以正常访问并用浏览器下载。conf文件中指定Charset的字段是在指定alias后面,不知道如果指定charset为gb2312会不会起作用?

2. 在浏览器中正常显示和下载的中文目录和中文文件名不能用flashget下载,我查阅了一些资料,即使将AddDefaultCharset指定为gb2312也不能在浏览器中用鼠标右键的“用网际快车下载”来正常下载,目录名和文件名均显示为乱码,下载下来的只是几K的东西;但可以“复制快捷方式”然后在网际快车中添加下载,此时文件名也是乱码,需要手动更改。还有人说直接去掉AddDefaultCharset并设定为off,经测试也无效。请问应该如何设置或是我的哪个步骤出错?
回复

使用道具 举报

发表于 2004-9-25 23:14:43 | 显示全部楼层
1. Alias 可以为中文,但必须用双引号括起来,不要漏掉了最后的“/”,比如:[code:1]Alias "/中文目录/" "/home/中文目录/"[/code:1]

2. AddDefaultCharset 设为大写的“GB2312”。

另外,系统的locale设为zh_CN.GB2312或zh_CN.GBK,不要设为 UTF-8 的。
或者,全部使用zh_CN.UTF-8,包括 httpd.conf 文件本身也要用 iconv 转一下,还有文件系统里的中文文件名。
总之,locale 是否使用 unicode 要匹配。
回复

使用道具 举报

 楼主| 发表于 2004-9-26 11:20:03 | 显示全部楼层
[quote:8de26228ac="dannycat"]1. Alias 可以为中文,但必须用双引号括起来,不要漏掉了最后的“/”,比如:[code:1]Alias "/中文目录/" "/home/中文目录/"[/code:1][/quote]

经试验还是不行。当Alias目录为中文时,在网页中点击目录不能显示出实际目录中的内容(已经加双引号);当实际目录为中文时,Apache启动时提示[Directory]属性中指定的目录不可用。

[quote:8de26228ac="dannycat"]2. AddDefaultCharset 设为大写的“GB2312”。

另外,系统的locale设为zh_CN.GB2312或zh_CN.GBK,不要设为 UTF-8 的。
或者,全部使用zh_CN.UTF-8,包括 httpd.conf 文件本身也要用 iconv 转一下,还有文件系统里的中文文件名。
总之,locale 是否使用 unicode 要匹配。[/quote]

Windows下去哪里找locale?
回复

使用道具 举报

发表于 2004-9-26 11:39:48 | 显示全部楼层
又忘了你的是WIN了
那就不用管 locale 了。
给出你的 Alias 和 Directory 设置来睇睇  
我去找台WIN机试试看
回复

使用道具 举报

 楼主| 发表于 2004-9-26 12:20:57 | 显示全部楼层
多谢。

[code:1]Alias /oceanvilla/ "E:/temp/oceanvilla/"
<Directory "E:/temp/oceanvilla">
    Options Indexes MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>
Alias /movie/ "E:/movie/"
<Directory "E:/movie">
    Options Indexes MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>
Alias /learning/ "E:/software/learning/sport/"
<Directory "E:/software/learning/sport">
    Options Indexes MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>
Alias /software/ "E:/software/"
<Directory "E:/software">
    Options Indexes MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>[/code:1]

Directory设置我不会,只是照抄Apache里这一项里原有的icons的设置

本来我的oceanvilla和sport处是用中文目录的
回复

使用道具 举报

发表于 2004-9-26 13:09:10 | 显示全部楼层
搞定。

需要把 httpd.conf 转码成 UTF-8 ,就 OK 了。(用记事本、EditPlus之类,另存为…… 选编码 UTF-8)

抓了个图片,无法上传。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-7 14:28 , Processed in 0.050164 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表