Nginx安装配置防盗链及深度优化

  

<强>一、编译安装前的优化
编译安装前的优化主要是用来修改程序名等等,通过更改源码以便隐藏软件名称和版本号。

  

下载我提供的所需源码包:https://pan.baidu.com/s/1tyS3GL0W2kcQGsdfwc3B1w
提取码:cs23
<强> 1,开始安装:

  
 <代码> [root@nginx ~] # yum - y擦掉httpd #卸载系统默认的httpd服务,防止端口冲突
  (root@nginx ~) # yum - y安装openssl-devel pcre-devel #安装所需依赖
  (root@nginx src) # rz # rz命令上传所需源码包
  (root@nginx src) # ls #确认上传的源码包
  nginx-sticky-module。邮政nginx-1.14.0.tar。广州ngx_cache_purge-2.3.tar.gz
  #将上传的源码包进行解压
  (root@nginx src) #焦油zxf nginx-1.14.0.tar.gz
  (root@nginx src) # nginx-sticky-module.zip解压缩
  (root@nginx src) #焦油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/核心/nginx。h #修改以下两行配置
  #定义NGINX_VERSION“6.6”#这里是修改nginx的版本号
  #定义NGINX_VER”IIS/盢GINX_VERSION #这里修改的是软件名称,我将原有的nginx改为了IIS。
  #修改后,保存退出即可
  [root@nginx nginx-1.14.0] # vim src/http/ngx_http_header_filter_module。c#编辑该文件
  #修改前如下:
  静态u_char ngx_http_server_string[]="服务器:nginx CRLF;49 #第行
  #修改后如下:
  静态u_char ngx_http_server_string []=" IIS服务器:“CRLF;#该IIS和前一个文件更改的最好一致。
  #更改完成后,保存退出即可。
  [root@nginx nginx-1.14.0] # vim src/http/ngx_http_special_response。c#修改此配置文件,防止页面出现错误时,回显时带着nginx和版本号
  #修改前如下:
  静态u_char ngx_http_error_tail[]=#在此之前有一行与此非常相似,注意区分,这行后的错误面没有构建字样。
  “& lt; hr> & lt; center> nginx”CRLF #第36行
  “& lt;/body>”CRLF
  “& lt;/html>”CRLF
  #更改后如下:
  静态u_char ngx_http_error_tail []=? lt; hr> & lt; center> IIS”CRLF #将原有的nginx改为IIS
  “& lt;/body>”CRLF
  “& lt;/html>”CRLF
  #更改完成后,保存退出即可
  [root@nginx nginx-1.14.0] # useradd - m - s/sbin/nologin www #创建nginx运行用户
  [root@nginx nginx-1.14.0] # ./configure——prefix=/usr/地方/nginx1.14——用户=www——组=www with-http_stub_status_module——with-http_realip_module with-http_ssl_module——with-http_gzip_static_module http-client-body-temp-path=/var/tmp/nginx/客户——http-proxy-temp-path=/var/tmp/nginx/代理——http-fastcgi-temp-path=/var/tmp/nginx/fcgi——with-pcre添加模块=/usr/src/ngx_cache_purge - 2.3——with-http_flv_module添加模块=/usr/src/nginx-sticky-module——with-http_dav_module with-http_addition_module——with-http_sub_module with-http_mp4_module,,使,,制作安装
  #编译安装
  [root@nginx nginx-1.14.0] # ln科幻/usr/local/nginx1.14/sbin/nginx/usr/local/sbin/#创建nginx命令软连接
  [root@nginx nginx-1.14.0] # mkdir - p/var/tmp/nginx/client #创建存放临时文件目录
  [root@nginx nginx-1.14.0] # nginx - t #检查配置文件
  [root@nginx nginx-1.14.0] # nginx #没有错误后,启动nginx
  [root@nginx nginx-1.14.0] # netstat -anput | grep 80 #确定80端口处于监听状态 
  

<>强命令行验证http头部的软件名称及版本号是否更改:

  
 <代码> [root@nginx conf] #卷发我127.0.0.1 #访问本机
  HTTP/1.1 200 OK
  服务器:IIS/6.6 #好吧,使我们更改的名称及版本
  日期:2019年10月25日,星期五00:10:17格林尼治时间
  内容类型:text/html
  内容长度:612
  最后修改:星期五,2019年10月25日00:03:52格林尼治时间
  连接:维生
  ETag:“5 db23be8 - 264”
  Accept-Ranges:字节
  (root@nginx conf) #卷发我127.0.0.1/tml #访问一个不存在的页面
  HTTP/1.1 404 Not Found
  服务器:IIS/6.6 #错误页面回显的信息,也是我们更改的,好的
  日期:2019年10月25日,星期五00:11:07格林尼治时间
  内容类型:text/html
  内容长度:164
  连接:维生 
  

<强>二,Nginx配置项优化
Nginx是主/工人结构:一个主进程,生成一个或多个工人进程。示意图如下:
 Nginx安装配置防盗链及深度优化”> <br/>成为集大成设计模式主要包含两个主要组件:主人和工人,主维护着工人队列,将请求下发到多个工人并执行,工人主要进行实际逻辑计算,并将结果返回给主人。</p>
  <p> Nginx采用这种进程模型的好处在于采用独立的进程,可以让互相之间不会影响,一个进程退出后,其他进程还在工作,服务不会中断,主进程则很快重新启动新的工人进程。当工人发生异常时,会导致当前工人上的所有请求失败,而不会影响到其他工人进程。<h2 class=Nginx安装配置防盗链及深度优化