Nginx编译安装及版本显示信息修改

Nginx编译安装及版本显示信息修改

目的:
1、解释源码编译安装nginx软件的预编译,编译以及安装,分别是在做什么,需要注意什么? 
2、通过源码方式编译安装nginx,并且顺利发布nginx的默认页面,通过浏览器看到的响应头信息中nginx的版本修改为,server : JFWS/2.2 
 

环境:

服务器IP地址:172.20.26.167

操作系统:centOS 7.9

解释:

源码编译安装nginx软件的预编译,编译以及安装,分别是在做什么,需要注意什么?

(1)预编译(./configure):主要是检测Linux操作系统安装软件所需的依赖环境、库文件,检测Linux系统是否存在GCC编译环境,指定软件服务的安装路径,自定义软件服务特定的功能和模块,会产生Makefile 文件。

(2)编译(make或make build):主要是基于make编译工具,读取Makefile 文件,调用Linux系统下GCC编译环境(C编译器&CC工具),将软件包中的源代码文件编译生产二进制文件;

(3)安装(make install):主要是将第二步make编译产生的二进制文件拷贝或者安装到Linux操作系统指定的安装目录中。

操作开始:

(1)从官网下载源码安装包;

(2)安装好开发相应的工具包,例如:gcc,gcc-c++,pcre-devel,zlib-devel等等,关闭selinux、防火墙等服务。

yum install gcc,gcc-c++,pcre-devel,zlib-devel -y

/usr/local/src  进入/usr/local/src目录下

wget -c http://nginx.org/download/nginx-1.18.0.tar.gz  #从官网下载了nginx-1.18.0.tar.gz

[root@localhost src]#tar xf nginx-1.18.0.tar.gz   #解压缩nginx-1.18.0.tar.gz

 [root@localhost src]#cd nginx-1.18.0/    #进入解压后的文件目录,查阅解压情况

[root@localhost nginx-1.18.0]#./configure --prefix=/usr/local/nginx    #开始预编译操作

预编译完成后,可以查看是否有报错提示,是否有 “objs/Makefile” 文件产生,下图为预编译成功完成

[root@localhost nginx-1.18.0]#make    #执行make 命令进行编译

[root@localhost nginx-1.18.0]#make install    #进行安装

安装完成后,查看nginx目录下的文件情况

[root@localhost nginx-1.18.0]#cd /usr/local/nginx

查看nginx相关参数

例如:

[root@localhost nginx]#/usr/local/nginx/sbin/nginx –v

[root@localhost nginx]#/usr/local/nginx/sbin/nginx –V

[root@localhost nginx]#/usr/local/nginx/sbin/nginx –t   检查配置文件语法是否正确

启动nginx服务,并查看端口状态

[root@localhost nginx]#/usr/local/nginx/sbin/nginx

[root@localhost nginx]#netstat -nltp

[root@localhost nginx]#ps -ef |grep nginx   查看nginx 进程状态

基于刚安装完的时候,nginx 目录下已产生一些临时目录,用于一些数据的缓存

在浏览器中输入nginx 服务器IP地址,查看nginx的默认页面

在nginx的默认页面,按F12 查看源代码情况,可以发现nginx的版本为Server:nginx/1.18.0  如下图:

如果要将通过浏览器看到的响应头信息中nginx的版本修改为,server : JFWS/2.2 

需要停止当前的nginx,进入解压出来的nginx 源码 目录(不是nginx的安装目录),编辑ngx_http_header_filter_module.c文件

vim /usr/local/src/nginx-1.18.0/src/http/ngx_http_header_filter_module.c

定位到49、50行,将

static u_char ngx_http_server_string[] = "Server: nginx" CRLF;

static u_char ngx_http_server_full_string[] = "Server: " NGINX_VER CRLF;

更改为

static u_char ngx_http_server_string[] = "Server: JFWS/2.2 " CRLF;

static u_char ngx_http_server_full_string[] = "Server: JFWS/2.2 "  CRLF;

保存退出,重新预编译、编译、安装, 启动nginx 服务,刷新nginx的默认页面,发现

浏览器看到的响应头信息中nginx的版本已经修改为,server : JFWS/2.2,如下图:

  • 21
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lqcbj_IT老混混

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值