CentOS 7.4源码编译nginx1.12 并且隐藏nginx的版本

简介: CentOS 7.4源码编译nginx1.12 并且隐藏nginx的版本

1.下载

     [root@localhost ~]# cd /usr/local/src/

     [root@localhost src]#  wget   http://nginx.org/download/nginx-1.12.2.tar.gz

2.解压

    [root@localhost src]# tar zxvf nginx-1.12.2.tar.gz

3. 预编译

安装前确认安装扩展 没有的直接 yum install wget gcc gcc-c++ pcre-devel zlib-devel openssl openssl-devel

如果要隐藏nginx的版本可以

(1).修改  nginx-1.12.2/src/core/nginx.h  文件

(2)src/http下的ngx_http_header_filter_module.c文件

vim src/http/ngx_http_header_filter_module.c

(3) src/http下的ngx_http_special_response.c文件


然后编译 nginx伪装成SSI

 [root@localhost src]# cd nginx-1.12.2

  [root@localhost nginx-1.12.2]# ./configure --prefix=/usr/local/nginx    --with-http_ssl_module   --with-http_v2_module --with-http_stub_status_module   --with-pcre  --with-http_gzip_static_module  

 解释

 --with-http_gzip_static_module :支持压缩

 --with-http_stub_status_module :支持nginx状态查询

 --with-http_ssl_module :支持https

 --with-http_spdy_module :支持google的spdy,想了解请百度spdy,这个必须有ssl的支持

 --with-pcre :为了支持rewrite重写功能,必须制定pcre

 可根据自己需求

4. [root@localhost src]# make && make install

        echo $?   意思为上一步的执行结果 0意思成功

 

5.添加系统变量(方便启停服务)

[root@localhost nginx-1.12.2]# vim /etc/profile

  我一般是在56行添加     export PATH=/usr/local/nginx/sbin:$PATH

       

 [root@localhost nginx-1.12.2]#source /etc/profile

 添加到系统路径就可以直接用了

   [root@localhost nginx-1.12.2]# nginx -V

 

 隐藏后的在服务器看


 会显示编译时的详细信息 就可以直接操作启动 停止了

   [root@localhost nginx-1.12.2]# nginx -s reload



目录
相关文章
|
25天前
|
应用服务中间件 Linux nginx
【Azure App Service】基于Linux创建的App Service是否可以主动升级内置的Nginx版本呢?
基于Linux创建的App Service是否可以主动升级内置的Nginx版本呢?Web App Linux 默认使用的 Nginx 版本是由平台预定义的,无法更改这个版本。
134 77
|
2月前
|
负载均衡 Ubuntu 应用服务中间件
nginx修改网站默认根目录及发布(linux、centos、ubuntu)openEuler软件源repo站点
通过合理配置 Nginx,我们可以高效地管理和发布软件源,为用户提供稳定可靠的服务。
217 13
|
3月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。通过具体案例,读者可以了解如何准备环境、下载源码、编译安装、配置服务及登录 MySQL。编译源码安装虽然复杂,但提供了更高的定制性和灵活性,适用于需要高度定制的场景。
222 3
|
3月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。
本文介绍了在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。内容涵盖准备工作、下载源码、编译安装、配置服务、登录设置及实践心得,帮助读者根据需求选择最适合的安装方法。
256 2
|
3月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
350 2
|
4月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置服务等,并与使用 RPM 包安装进行了对比,帮助读者根据需求选择合适的方法。编译源码安装虽然复杂,但提供了更高的定制性和灵活性。
332 2
|
4月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤
【10月更文挑战第7天】本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据自身需求选择合适的方法。
116 3
|
5月前
|
应用服务中间件 nginx Docker
Docker镜像-基于DockerFile制作编译版nginx镜像
这篇文章介绍了如何基于Dockerfile制作一个编译版的nginx镜像,并提供了详细的步骤和命令。
708 17
Docker镜像-基于DockerFile制作编译版nginx镜像
|
4月前
|
安全 Linux 编译器
Centos 7.9如何使用源码编译安装curl最新版本
通过上述步骤,您就能在CentOS 7.9上成功地从源代码编译并安装curl的最新版本。这种方法不仅提供了灵活性,允许您定制编译选项,还确保了软件的最新功能和安全更新得到应用。
200 1
|
4月前
|
应用服务中间件 Linux nginx
CentOS7安装Nginx
CentOS7安装Nginx