在webroot下打开文件而不下载它们

时间:2011-03-20 20:09:12

标签: php apache localhost

当我从浏览器转到我的localhost时,我看到存储的文件列表是xls或word。 当我打开word / xls或其他类似的文件时,它们不会打开,但我在firefox中有一个选项是打开它们还是保存它们,如果我打开它们,它们先被下载然后下载文件的副本被打开。 我想要一种方法来打开文件而不用下载它们。

感谢。

2 个答案:

答案 0 :(得分:1)

这是浏览器配置。您无法影响此行为,因为从安全角度来看,不希望让网站调用要使用的应用程序或如何打开文件。

您通过网站下载的每个文件都与媒体类型MIME type相关联。例如,Word文件使用application/msword

这就是关于文件的所有网络服务器。还有一个额外的HTTP标头Content-Disposition:可以在inline(默认)和attachment之间切换(强制下载)。但这不太可能在默认的Web服务器设置中设置。您可以使用Firebug(http标头)进行检查。

但是根据您的描述,打开的对话框是由默认的Firefox设置引起的。用户可以选择自动打开某些文件类型(对话框IIRC中有一个复选框)。网站对此没有影响力。例如,PDF是特殊情况,其中Adobe浏览器插件在浏览器窗口内部打开它。 (Internet Explorer中的Word文件存在类似的插件,但Firefox不存在。)

答案 1 :(得分:0)

我相信你需要系统调用才能做到这一点。至少在Mac OS X上,你理论上可以通过服务器端脚本语言执行“open /path/to/filename.ext”,以使它们由mac上的默认应用程序打开。过去我不完全确定你会有什么选择。