一、编译安装前的优化
编译安装前的优化主要是用来修改程序名等等,通过更改源码以便隐藏软件名称和版本号。
下载我提供的所需源码包:https://pan.baidu.com/s/1tyS3GL0W2kcQGsdfwc3B1w
提取码:cs23
1、开始安装:
[root@nginx ~]# yum -y erase httpd #卸载系统默认的httpd服务,防止端口冲突
[root@nginx ~]# yum -y install openssl-devel pcre-devel #安装所需依赖
[root@nginx src]# rz #rz命令上传所需源码包
[root@nginx src]# ls #确认上传的源码包
nginx-sticky-module.zip nginx-1.14.0.tar.gz ngx_cache_purge-2.3.tar.gz
#将上传的源码包进行解压
[root@nginx src]# tar zxf nginx-1.14.0.tar.gz
[root@nginx src]# unzip nginx-sticky-module.zip
[root@nginx src]# tar zxf ngx_cache_purge-2.3.tar.gz
[root@nginx src]# cd nginx-1.14.0/ #切换至nginx目录
[root@nginx nginx-1.14.0]# vim src/core/nginx.h #修改以下两行配置
#define NGINX_VERSION "6.6" #这里是修改nginx的版本号
#define NGINX_VER "IIS/" NGINX_VERSION #这里修改的是软件名称,我将原有的nginx改为了IIS。
#修改后,保存退出即可
[root@nginx nginx-1.14.0]# vim src/http/ngx_http_header_filter_module.c #编辑该文件
#修改前如下:
static u_char ngx_http_server_string[] = "Server: nginx" CRLF; #第49行
#修改后如下:
static u_char ngx_http_server_string[] = "Server: IIS" CRLF; #该IIS和前一个文件更改的最好一致。
#更改完成后,保存退出即可。
[root@nginx nginx-1.14.0]# vim src/http/ngx_http_special_response.c #修改此配置文件,防止页面出现错误时,回显时带着nginx和版本号
#修改前如下:
static u_char ngx_http_error_tail[] = #在此之前有一行与此非常相似,注意区分,这行的error后面没有build字样。
"
nginx " CRLF #第36行
"" CRLF
"" CRLF
#更改后如下:
static u_char ngx_http_error_tail[] =
"
IIS " CRLF #将原有的nginx改为IIS
"