Nginx服务器如何配置启用Https

服务器
SSL英文名为Secure Socket Layer,安全套接字层。SSL是一种数字证书,它使用ssl协议在浏览器和web server之间建立一条安全通道,数据信息在client与server之间的安全传输。

 [[413902]]

本文转载自微信公众号「程序你好」,作者一个she9。转载本文请联系一个程序你好公众号。

在之前鱼鱼单词微信小程序中需要调用自己搭建服务器api,但是服务器配置URL必须是HTTPS,所以需要通过配置nginx的SSL模块来支持HTTPS访问,也就是说,要求通过https://abc进行访问。

SSL英文名为Secure Socket Layer,安全套接字层。SSL是一种数字证书,它使用ssl协议在浏览器和web server之间建立一条安全通道,数据信息在client与server之间的安全传输。

1、配置ssl模块

先要检查 nginx 是否安装 http_ssl_module 模块,默认不会安装这个模块。

下载nginx安装包,并解压。

配置 ssl 模块。

./configure --prefix=/usr/local/nginx --with-http_ssl_module

使用 make 命令编译(使用make install会重新安装nginx),此时当前目录会出现 objs 文件夹。

用新的 nginx 文件覆盖当前的 nginx 文件。

再次查看安装的模块(configure arguments: --with-http_ssl_module说明ssl模块已安装)。

2、配置部署ssl证书

可以去阿里云或腾讯云申请免费的证书,一般提供域名验证即可成果申请免费证书。申请成果后下载对应的证书文件(我们选择nginx证书)。

下载申请好的 ssl 证书文件压缩包到centos服务器目录并解压(这里用的 .crt文件 与 .key 文件,文件名可以更改)。

3、Nginx配置文件设置

打开 Nginx 安装目录下 conf 目录中的 nginx.conf 文件,找到下面部分:

# HTTPS server 
# #server { 
# listen 443; 
# server_name localhost; 
# ssl on
# ssl_certificate cert.pem; 
# ssl_certificate_key cert.key
# ssl_session_timeout 5m; 
# ssl_protocols SSLv2 SSLv3 TLSv1; 
# ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP; 
# ssl_prefer_server_ciphers on
# location / { 


#} 
#} 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.

将其修改为:

server { 
    listen 443; 
    server_name localhost; 
 
    ssl_certificate   cert/证书名称.pem; 
    ssl_certificate_key  cert/证书名称.key
    ssl_session_cache  shared:SSL:1m; 
    ssl_session_timeout 5m; 
    ssl_ciphers HIGH:!aNULL:!MD5 
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2; 
    ssl_prefer_server_ciphers on
    location / { 
        root html; 
        index index.html index.htm; 
    } 

  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.

增加反向代理指向我们restful api 地址

location /wx/{ 
    proxy_pass "http://......:3000"
    proxy_redirect default

  • 1.
  • 2.
  • 3.
  • 4.

在80端口的server配置节点,增加个重定向的设置,使从80端口访问的http请求,跳转到上面我们刚刚配置到的https地址。

rewrite ^(.*)$ https://***:443/$1 permanent; 
  • 1.

最后重新启动nginx服务器,使配置生效。

通过 https 方式访问您的站点,测试站点证书的安装配置。在浏览器中输入https://***.com,能正确访问则说明配置成功。

 

责任编辑:武晓燕 来源: 程序你好
相关推荐

2019-12-30 16:03:54

Web服务器Nginx

2020-04-15 20:57:57

NginxWeb服务器

2021-11-24 08:00:00

服务器Web系统

2019-07-09 14:57:09

代理服务器NginxHTTPS

2010-02-06 10:24:52

CentOS Ngin

2018-11-12 10:53:24

NginxHTTPS服务器

2011-08-02 16:17:00

2017-12-27 10:18:09

ApacheNginx服务器

2018-04-02 15:07:01

LinuxApacheWeb服务器

2009-01-10 18:58:52

2010-07-26 10:34:31

启用Telnet服务器

2010-03-30 14:35:58

Nginx反向代理

2018-08-21 08:49:53

Nginx服务器配置

2018-08-07 08:54:18

2018-10-26 09:52:25

Nginx服务器负载均衡

2010-03-30 17:35:04

Nginx服务器

2023-10-12 19:46:26

Nginx服务器

2024-03-26 12:08:20

加密NginxHTTP

2014-01-15 10:06:30

vFlash

2020-10-12 08:06:28

HTTP 服务器证书
点赞
收藏

51CTO技术栈公众号