标签:
本文介绍在Web服务器做出响应时,为了提高安全性而在HTTP响应头中可以使用的各种响应头字段。由于部分浏览器中有可能对某些字段或选项不提供支持,所以在使用这些字段时请先确认客户端环境。
该响应头中用于控制是否在浏览器中显示frame或iframe中指定的页面,主要用来防止Clickjacking(点击劫持)攻击。
X-Frame-Options: SAMEORIGIN
如果从script或stylesheet读入的文件的MIME类型与指定MIME类型不匹配,不允许读取该文件。用于防止XSS等跨站脚本攻击。
X-Frame-Options: nosniff
用于启用浏览器的XSS过滤功能,以防止XSS跨站脚本攻击。
X-XSS-Protection: 1; mode=block
用于控制当外部资源不可信赖时不被读取。用于防止XSS跨站脚本攻击或数据注入攻击(但是,如果设定不当,则网站中的部分脚本代码有可能失效)。
之前的字段名为X-Content-Security-Policy
Content-Security-Policy: default-src ‘self‘
用于指定当不能将“crossdomain.xml”文件(当需要从别的域名中的某个文件中读取Flash内容时用于进行必要设置的策略文件)放置在网站根目录等场合时采取的替代策略。
X-Permitted-Cross-Domain-Policies: master-only
用于通知浏览器只能使用HTTPS协议访问网站。用于将HTTP网站重定向到HTTPS网站。
Strict-Transport-Security: max-age=31536000; includeSubDomains
当使用XMLHttpRequest从其他域名中获取资源进行跨域通信时使用。
Access-Control-Allow-Origin: http://www.example.com Access-Control-Allow-Methods: POST, GET, OPTIONS Access-Control-Allow-Headers: X-TRICORDER Access-Control-Max-Age: 1728000
上述代码用于设定与“http://www.example.com”进行跨域通信处理,允许使用POST, GET, OPTIONS方法,在发送的请求头中添加X-TRICORDER字段,通信超时时间为1,728,00秒。
用于放置直接打开用户下载文件。
X-Download-Options: noopen
用于设置Cookie。
Set-Cookie: name=value; secure; HttpOnly
指定浏览器的缓存方式,通过逗号分隔。
Cache-Control: no-cache, no-store, must-revalidate
用于与HTTP/1.0进行向后兼容的响应头字段,原本只被使用在客户端请求头中。与“Cache-Control: no-cache”结合使用。
pragma: no-cache
指定数据的有效时间。不希望缓存数据时可以将该字段值与Date字段值指定为相同值或者将该字段值指定为“-1”。
expires: -1
指定实体内对象的媒体类型(MediaType)。在charset关键字中指定文字编码格式。
content-type: text/html;charset=utf-8
在Apache服务器中指定响应头时,需要在httpd.conf文件中将下述模块设定为有效状态。
然后使用下述方法设定HTTP响应头。
Header set HeaderFieldName "value" //例如 Header set X-XSS-Protection "1; mode=block”
标签:
原文地址:http://www.cnblogs.com/sunshq/p/4478488.html