默认apache 不支持下载rar格式文件 

这里涉及到mime 模块问题

需要添加 addtype application/octet-stream rar  这个语句

或者写入mime.types 文件 里面也可以  两者选其一

这样网站再连接到rar文件就会提示下载了。(类型列表)

对于其他格式可以举一反三

下面是mime模块的知识补充 供学习

mod_mime 模组

这个模组包含在 mod_mime.c 文件里,而且依预设会编译进来。他提供
从文件名称决定文件型态的功能。


4.10.1 摘要

这个模组用来决定文件的 mime 型态。某些 mime 型态会指出服务器得
执行的特别程序,其它的型态则传回客户端,如此浏览器就可以适当地
处理文件。

文件的文件名称被当作基本名称的一部份,其後跟随某些副文件名,次序
如下:

base.type.language.enc

其中 type 这个副文件名设定文件的型态,型态定义在 TypesConfig 文件
以及 AddType 指令的设定中。而 language 这个副文件名设定文件的语言
,藉由 AddLanguage 指令定义。最後,enc 这个副文件名设定文件的编码
,藉由 AddEncoding 指令定义。


4.10.2 AddEncoding

语法: AddEncoding mime-enc 副文件名 副文件名
用於: server config, virtual host, directory, .htacess
需求: FileInfo
状态: 基础
模组: mod_mime

AddEncoding 这个指令以指定的编码型态把可能作为文件名称结尾的副
文件名加入文件副文件名列表。Mime-enc 是用在以该副文件名结尾的文件的
mime 编码。例如:

AddEncoding x-gzip gz
AddEncoding x-compress Z

这将会使以 .gz 结尾的文件被标记为使用 z-gzip 编码,以及 .Z 结
尾的文件被标记为使用 x-compress 编码。


4.10.3 AddLanguage

语法: AddLanguage mime-lang 副文件名 副文件名
用於: server config, virtual host, directory, .htaccess
需求: FileInfo
状态: 基础
模组: mod_mime

AddLanguage 这个指令以指定的语言把可能作为文件名称结尾的副文件名
加入文件副文件名列表。Mime-lang 是以此副文件名作为名称结尾之文件的
mime 语言,这是在所有作为编码的副文件名移除之後再决定的。例如:

AddEncoding x-compress Z
AddLanguage en .en
AddLanguage fr .fr

那麽 xxxx.ez.Z 将会被当作压缩过的英文文件。虽然内容的语言已经
报告给客户端,浏览器不太可能使用此资讯。AddLanguage 这个指令对
内容协商(content negotiation) 会更有用,这样服务器可以参考客户
端的语言回传数份文件中的一份。


4.10.4 AddType

语法: AddType mime-type 副文件名 副文件名
用於: server config, virtual host, directory, .htaccess
需求: FileInfo
状态: 基础
模组: mod_mime

AddType 这个指令以指定的内容型态把可能作为文件名称结尾的副文件名
。Mime-type 是用在以该副文件名结尾的文件的 mime 型态。这是在所有
作为编码以及语言的副文件名移除之後再决定的。例如:

AddType p_w_picpath/gif GIF

新的 mime 型态建议使用 AddType 指令加入而不要修改 TypesConfig
文件。

注意,与 NCSA httpd 不同,这个指令不能用来设定特殊文件的型态。


4.10.5 TypesConfig

语法: TypesConfig 文件名称
预设: TypesConfig conf/mime.types
用於: server config
状态: 基础
模组: mod_mime

TypesConfig 这个指令设定 mime 型态配置档所在的位置。文件名称是
相对於 ServerRoot 的。这个文件设定从文件扩充文件名对应内容型态的
预设列表;不建议变更这个文件。使用 AddType 指令取代对它做修改
。文件所包含的行是使用 AddType 指令的参数格式:

mime 型态 副文件名 副文件名 ...

副文件名是小写,空白行,以及('#') 起始的行会被忽略。