一、Nginx安装
`$ cd nginx-1.12.0
$ ./configure --prefix=/data/qst/nginx #指定安装目录
$ make # 编译
$ make install # 安装`
将ngixn安装至 /data/qst/nginx目录
二、Nginx升级或引入第三方库
上传源码包 以nginx-1.25.0.tar.gz为例:
1、解压:
tar xf nginx-1.25.0.tar.gz
cd nginx-1.25.0
2、编译
以原有nginx编译参数为准 可通过nginx -V 查询
例: --prefix=/data/qst/nginx
./configure --prefix=/data/qst/nginx --with-http_stub_status_module --with-pcre --with-http_sub_module --add-module=/data/qst/headers-more-nginx-module-0.34
make #注意 仅make
cd objs
此目录下会生成二进制nginx 文件
使用此nginx 文件替换原有 nginx目录下 sbin/nginx
关闭nginx nginx -s stop
重命名原nginx mv sbin/nginx sbin/nginx_old
替换原有nginx mv objs/nginx sbin/nginx
重新开启nginx sbin/nginx
注意:
1、headers-more-nginx-module-0.34
可以隐藏Server:nginx 头信息
Nginx 对应 server下配置 more_clear_headers 'Server';
2、--with-http_sub_module 可以批量给前端添加属性 Nginx 对应 server下配置
set $cspNonce '2726c7f26c';
sub_filter_once off;
sub_filter_types *;
sub_filter *CSP_NONCE* $cspNonce;
sub_filter '<script' '<script nonce=$cspNonce ';
sub_filter '<link' '<link nonce="$cspNonce" ';
用于处理“Content-Security-Policy”头中缺少“Object-Src”或“Default-src”策略或相应策略不安全漏洞
以上两个漏洞修复方案 针对于windows版本的nginx 可以使用cygwin64