修改或隐藏Nginx的版本号

隐藏nginx的版本号很简单,nginx的HttpCoreModule提供了一条叫做server_tokens指令,我这要将这条指令设置为“server_tokens off”就可以了。

首访问一下,看一下现有的版本:

[root@ mail ~]# curl --head http://192.168.3.139

HTTP/1.1 403 Forbidden

Server: nginx/0.8.53

Date: Thu, 09 Dec 2010 00:02:04 GMT

Content-Type: text/html

Content-Length: 169

Connection: keep-alive

通过我得到的是“Server: nginx/0.8.53”。

然后在配置文件中,http区段中插入“server_tokens  off;”,重新载入配置文件:

[root@mail ~]# vi /usr/local/nginx0.8/conf/nginx.conf

 

worker_processes  1;

 

events {

    worker_connections  1024;

}

 

http {

    include       mime.types;

    default_type  application/octet-stream;

    server_tokens  off;

    expires         5s;

    sendfile        on;

 

    keepalive_timeout  65;

 

include     "sites-enabled/mail*";

 

}

[root@mail ~]#service nginx reload

 再次访问,看下图,nginx没有了版本号

修改版本号

    修改版本号的方法可要比隐藏版本号的方法复杂一点,它需要在配置安装nginx之前进行。下载完成nginx并解压后,首先要对源码进行修改,源码文件都在二级目录“nginx-0.8.53/src/”下,找到如下文件“src/core/nginx.h”,然后再对它进行修改,按照下面的代码中指出的两行(以用粗体标明):

[root@mail nginx-0.8.53]# vi src/core/nginx.h

 

……

 

#define nginx_version         8053

#define NGINX_VERSION      "10.0"

#define NGINX_VER          "jh/" NGINX_VERSION

 

#define NGINX_VAR          "NGINX"

#define NGX_OLDPID_EXT     ".oldbin"

 

 

#endif /* _NGINX_H_INCLUDED_ */

对这两行,你可以随便填写,如果是为了迷惑别人你可以修改为Apache 3.0或是Apache 2.0,或者是微软的IIS(估计这是在自找麻烦!)以及其它的文本服务器名称或版本号都行;如果是想牛X一下,那么就自己起一个响儿不亮的名字吧!修改完成后就可进行编译安装了。安装完成后访问一下,看一下效果:

没错,已经按照我们的意思了。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值