如何移除网站Response Headers中的X-Powered-By信息?

Posted 冰柠檬草

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何移除网站Response Headers中的X-Powered-By信息?相关的知识,希望对你有一定的参考价值。

X-Powered-By是网站响应头信息其中的一个,出于安全的考虑,一般会修改或删除掉这个信息。

如果你用的node.js express框架,那么X-Powered-By就会显示Express。如果用的thinkjs,那么X-Powered-By就会显示thinkjs.1...

最近,在折腾node.js程序的时候,我就想把这个信息删除。具体删除方法如下:

在Express中删除X-Powered-By

var app = express();
app.disable(‘x-powered-by‘);

在thinkjs中删除X-Powered-By

在App/Lib/Controller/中某个分组的BaseController下,比如Home/BaseController,加如下第二行代码:

init: function(http) {
    http.res.removeHeader("x-powered-by");
    this.super("init", http);
}

php中删除X-Powered-By

  • 第一种方法

PHP.ini设置expose_php = off

if (function_exists(‘header_remove‘)) {
    header_remove(‘X-Powered-By‘); // PHP 5.3+
} else {
    @ini_set(‘expose_php‘, ‘off‘);
}

在asp.net中删除X-Powered-By

在IIS 6 和 IIS 7 中 移除X-Powered-By xxx 的 HTTP头 的方法如下:

X-Powered-By HTTP头并不只是在Asp.net中存在,其他服务端语言,比如php, 也会包含这个HTTP头,当Asp.net被安装时,这个头会作为一个定制的 HTTP头插入IIS中,因此,我们需要将这个HTTP头从IIS的配置中删除,如果你的网站是在共享的环境下并且没有使用IIS7并使用管道模式,你不 得不为此联系你的空间提供商来帮你移除。(如果你的网站是在IIS7环境下,那你可以通过HTTP Module的形式通过编程来移除)

IIS6中移除X-Powered-By HTTP头

启动IIS,展开Website目录

在Website上点击右键并在弹出的菜单中选择“属性”

选择HTTP Header标签,所有IIS响应中包含的自定义的HTTP头都会在这里显示,只需要选择响应的HTTP头并点击删除就可以删除响应的HTTP头,如图:

技术分享

而在IIS7中移除X-Powered-By HTTP头的方法是:

选择你需要修改的站点并双击HTTP响应头部分

所有的自定义HTTP头全在这里了,删除相应的头仅需要点击右边的”Remove”链接:

技术分享

以上是关于如何移除网站Response Headers中的X-Powered-By信息?的主要内容,如果未能解决你的问题,请参考以下文章

彻底移除 IIS Response Header 版本信息

获取跨域请求的自定义的response headers

HttpRunner中获取Response Header中的参数

HttpRunner中获取Response Header中的参数

利用python的requests库如何获取post后服务器返回的headers信息?

C#如何用winform获取某个网站的cookies