当前位置:首页 > 教程 > 正文内容

nginx编译部署加固(nginx编译ssl)

2023-04-23 20:30:05教程1

nginx编译ssl

https配置步骤:

1、申请SSL证书;

2、在Nginx服务器上面安装SSL证书:

(1)将证书文件(.crt文件)放到指定目录下,例如:/usr/local/nginx/conf/cert

(2)将私钥文件(.key文件)放到指定目录,例如/usr/local/nginx/conf/ssl

(3)若为CA机构签发证书,需要将中间证书文件放到指定目录下,例如/usr/local/nginx/conf/certs

3、修改Nginx配置文件:

(1)打开/etc/nginx/nginx.conf文件

(2)在http部分增加如下配置

ssl on;

ssl_certificate /usr/local/nginx/conf/cert/xxx.crt;

ssl_certificate_key /usr/local/nginx/conf/ssl/xxx.key;

ssl_session_cache shared:SSL:1m;

ssl_session_timeout 5m;

(3)如果是CA证书,还需要增加配置

ssl_client_certificate /usr/local/nginx/conf/certs/xxx.crt;

4、重新加载Nginx配置文件:nginx -s reload

5、测试配置是否正确:

(1)curl -k https://www.xxx.com (测试https是否正常)

(2)openssl s_client -connect www.xxx.com:443 (检查ssl证书是否安装正确)

nginx编译安装 默认配置

方法如下:

1.从nginx官网下载相应的安装包。

2.建议下载 下载稳定版。

3.解压到相应的目录,比如是e盘 然后修改目录名字为nginx。

4.进入nginx目录 双击nginx.exe 来启动nginx。

5.此时 直接在浏览器地址栏输入:localhost 便能看到 欢迎页面,说明虚拟主机已经搭建好了。

6.但是有时候,需要配置路径,在默认情况下,root是nginx目录下的html文件夹,如若修改 则打开conf目录下的nginx.conf。

7.找到server 选项 修改咯location 中的root 选项。

8.比如修改到D:/webroot 则修改为:

nginx编译openssl

chrome版本不支持意思是当前所使用版本太低不受系统支持,下载chrome新版本即可。chrome版本不支持的几种解决办法1、换浏览器Chrome 51+ 不支持带 NPN 的 HTTP/2 网站,作为浏览者,可以使用其它的浏览器,比如 Safari、Edge 之类。这样就可以用新的协议来访问世界上那 10% 支持 HTTP/2 的 Web 服务器了。

2、换服务器Ubuntu 16.04 LTS 是目前唯一官方支持 openssl-1.0.2 的 Linux 发行版,如果一直采用 Ubuntu 做服务器,可用考虑一下升级,LTS 版本的支持期长达五年。

3、重新编译使用新的 openssl-1.0.2 源代码重新编译你的 Web 服务器,比如 nginx。

4、容器除了自己编译之外,如果你的系统环境中已经有了容器支持,你还可以在容器中运行一个 Ubuntu 16.04 LTS,并将 Web 服务器运行在其中。

nginx编译模块

可以,压缩当前部署的Nginx的目录,拷贝到指定的路径解压部署。

nginx编译指定安装路径

一、 nginx 简单使用说明:

1.登录官网 http

2.解压所下载文件到指定的盘符

3.启动服务器,步骤如下:

打开 dos 命令窗口,切换到 nginx 的目录下。

输入启动命令:start nginx

打开浏览器输入网址:http://localhost:80(80 端口可以省略)

二、nginx 运行原理:

Nginx 由内核和模块组成,其中,内核的设计非常微小和简洁,完成的工作也非常简单,仅仅通过查找配置文件将客户端请求映射到一个 location block(location 是 Nginx 配置中的一个指令,用于 URL 匹配),而在这个 location 中所配置的每个指令将会启动不同的模块去完成相应的工作。

nginx编译报错

第一种:Nginx自己的错误页面

Nginx访问一个静态的html 页面,当这个页面没有的时候,Nginx抛出404,那么如何返回给客户端404呢?

看下面的配置,这种情况下不需要修改任何参数,就能实现这个功能。

server {

listen 80;

server_name www.test.com;

root /var/www/test;

index index.html index.htm;

location / {

}

# 定义错误页面码,如果出现相应的错误页面码,转发到那里。

error_page 404 403 500 502 503 504 /404.html;

# 承接上面的location。

location = /404.html {

# 放错误页面的目录路径。

root /usr/share/nginx/html;

}

}

第二种:反向代理的错误页面

如果后台Tomcat处理报错抛出404,想把这个状态叫Nginx反馈给客户端或者重定向到某个连接,配置如下:

upstream www {

server 192.168.1.201:7777 weight=20 max_fails=2 fail_timeout=30s;

ip_hash;

}

server {

listen 80;

server_name www.test.com;

root /var/www/test;

index index.html index.htm;

location / {

if ($request_uri ~* ‘^/$’) {

rewrite .* http://www.test.com/index.html redirect;

}

# 关键参数:这个变量开启后,我们才能自定义错误页面,当后端返回404,nginx拦截错误定义错误页面

proxy_intercept_errors on;

proxy_pass http://www;

proxy_set_header HOST $host;

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-FOR $proxy_add_x_forwarded_for;

}

error_page 404 /404.html;

location = /404.html {

root /usr/share/nginx/html;

}

}

第三种:Nginx解析php代码的错误页面

如果后端是php解析的,需要加一个变量

在http段中加一个变量

fastcgi_intercept_errors on就可以了。

指定一个错误页面:

error_page 404 /404.html;

location = /404.html {

root /usr/share/nginx/html;

}

指定一个url地址:

error_page 404 /404.html;

error_page 404 = http://www.test.com/error.html;

本网站文章仅供交流学习 ,不作为商用, 版权归属原作者,部分文章推送时未能及时与原作者取得联系,若来源标注错误或侵犯到您的权益烦请告知,我们将立即删除.

本文链接:https://www.xibujisuan.cn/98793964.html