千家信息网

Content-disposition

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,Content-disposition 是 MIME 协议的扩展,MIME 协议指示 MIME 用户代理如何显示附加的文件。当 Internet Explorer 接收到头时,它会激活文件下载对话框,
千家信息网最后更新 2026年10月31日Content-disposition

Content-disposition 是 MIME 协议的扩展,MIME 协议指示 MIME 用户代理如何显示附加的文件。当 Internet Explorer 接收到头时,它会激活文件下载对话框,它的文件名框自动填充了头中指定的文件名。(请注意,这是设计导致的;无法使用此功能将文档保存到用户的计算机上,而不向用户询问保存位置。)

服务端向客户端游览器发送文件时,如果是浏览器支持的文件类型,一般会默认使用浏览器打开,比如txt、jpg等,会直接在浏览器中显示,如果需要提示用户保存,就要利用Content-Disposition进行一下处理,关键在于一定要加上p_w_upload:

Response.AppendHeader("Content-Disposition","p_w_upload;filename=FileName.txt");

备注:这样浏览器会提示保存还是打开,即使选择打开,也会使用相关联的程序比如记事本打开,而不是IE直接打开了。

Content-Disposition就是当用户想把请求所得的内容存为一个文件的时候提供一个默认的文件名。具体的定义如下:

content-disposition = "Content-Disposition" ":"

disposition-type *( ";" disposition-parm )

disposition-type = "p_w_upload" | disp-extension-token

disposition-parm = filename-parm | disp-extension-parm

filename-parm = "filename" "=" quoted-string

disp-extension-token = token

disp-extension-parm = token "=" ( token | quoted-string )

那么由上可知具体的例子:

Content-Disposition: p_w_upload; filename="filename.xls"

当然filename参数可以包含路径信息,但User-Agnet会忽略掉这些信息,只会把路径信息的最后一部分做为文件名。当你在响应类型为application/octet- stream情况下使用了这个头信息的话,那就意味着你不想直接显示内容,而是弹出一个"文件下载"的对话框,接下来就是由你来决定"打开"还是"保存" 了。

注意事项:

1.当代码里面使用Content-Disposition来确保浏览器弹出下载对话框的时候。 response.addHeader("Content-Disposition","p_w_upload");一定要确保没有做过关于禁止浏览器缓存的操作。如下:

response.setHeader("Pragma", "No-cache");
response.setHeader("Cache-Control", "No-cache");
response.setDateHeader("Expires", 0);

不然会发现下载功能在opera和firefox里面好好的没问题,在IE下面就是不行,就是找不到文件。


在IE5和Opera中浏览器会不管Content-Disposition头的内容,要再次声明Content-Type,声明Content-Length可以显示下载进度条


代码如下:

$fileName = 'config.ini';$mimeType = 'application/zip';if (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE 5') or strpos($_SERVER['HTTP_USER_AGENT'], 'Opera 7')) {        $mimeType = 'application/x-download';}header('Content-Disposition: p_w_upload; filename=' . $fileName);header('Content-Type: ' . $mimeType);header('Content-Length: ' . filesize($fileName));



文件 浏览器 浏览 用户 信息 文件名 内容 对话框 就是 对话 代码 功能 文件下载 时候 类型 路径 还是 提示 不行 接下来 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技企业 广东万易互联网科技有限公司惠州分公司 互联网科技工作委员会 互联网最新的科技有限公司 腾讯阿里互联网科技 合肥互联网科技公司 万易互联网科技 互联网与新科技 沃里互联网科技 中国互联网金融科技基金 无锡溥仪互联网科技有限公司 互联网大会黑科技排名 畅思互联网科技 允成互联网科技有限公司融资 迪庆互联网科技招生 伊宁互联网科技做什么的 卡尔迅互联网科技有限公司 广州梦谷互联网科技有限公司领导 科技互联网行业投资研究 陕西九四连强互联网科技有限公司 湖北九亚互联网络科技有限公司 艾特科技互联网 奇酷互联网络科技公司 善班互联网科技有限公司 互联网科技论坛 博兴的互联网电子科技公司 国大互联网教育科技有限公司工作 群盈汇互联网科技有限公司 中国科技和美国互联网 互联网科技的前景
0