在HTTP请求的header头里面,为什么有的时候有X-Powered-By这个值,有的时候没有呢?

x-powered-by不是Apache或者Nginx输出的,而是由语言解析器或者应用程序框架输出的, 这个值的意义用于告知网站是用何种语言或框架编写的。
例如:

  • php

PHP标准输出是:X-Powered-By: PHP/5.2.1 ,可在php.ini中增加或修改 expose_php = Off关闭。

  • thinkphp

而使用了ThinkPHP,会输出:X-Powered-By: ThinkPHP 2.0,可修改相关类文件关闭

  • .net

用.net会输出:X-Powered-By:ASP.NET,可修改web.config 删除

nginx编译的时候可以增加一个模块,HttpHeadersMore,用来统一删除或修改返回的http header。

重点内容另外网页服务器本身也会吐出自己的版本号,http header是Server:xxxxx,这个有时会造成有人专门利用特定版本网页服务器漏洞进行攻击,nginx可以在配置文件中增加或修改server_tokens off 来去除版本号。

你可能感兴趣的:(PHP,thinkphp,应用,HttpWebRequest)