• 购买https证书以及nginx配置https


    1、https的作用

    https的全名是安全超文本传输协议,是在http的基础上增加了ssl加密协议。在信息传输的过程中,信息有可能被劫持,从而造成数据的丢失,而如果使用的是https的话,即使信息被劫持,因为在传输过程中,信息是被加密的,所以也能保证数据的安全性。

    2、申请证书

    目前在阿里云或者腾讯云上都可以购买证书,现在以阿里云为例购买证书

    在阿里云的产品与服务上找到SSL证书

     

    点击购买证书,可以看到有免费型的SSL证书。如果是个人使用,用这个就行,如果是企业的话,就需要根据自己的具体需求去购买证书。

    免费型的只能对应一个固定的二级域名。

     

    选择证书申请,后边就根据提示,写清楚自己的域名,信息就下一步,然后验证就可以了。

     

    当状态变为以签发后,就能下载证书了,然后上传到服务器上边。

     

    3、查看nginx是否有--with-http_ssl_module模块

     

    使用https,是需要使用ssl模块。如果没有需要安装。

    4、配置https

    一下是本机的配置

    ssl on;

    ssl_certificate     ssl/2943505_www.yunweigonghui.com.pem;#最好写绝对路径

    ssl_certificate_key  ssl/2943505_www.yunweigonghui.com.key; #最好写绝对路径

    ssl_session_cache    shared:SSL:1m;

    ssl_session_timeout  5m;

    ssl_ciphers  HIGH:!aNULL:!MD5;

    ssl_prefer_server_ciphers  on;

    至于server中其余的配置,只要和配置http的保持一致就行了。也就是80端口里边如何配置,这个443端口里边就如何配置。

    5、参数详解

    个人认为除了ssl_certificate和ssl_certificate_key需要根据实际情况去配置,别的默认就可以。

    参数

    解释

    ssl on;

    开启ssl模块

    ssl_certificate ssl/ssl.pem;

    存放公钥的位置(一般都使用crt格式或pem格式公钥证书)

    ssl_certificate_key ssl/ssl.key;

    存放key的位置

    ssl_session_cache shared:SSL:1m;

    存储session参数的缓存的类型和大小

    ssl_session_timeout  5m;

    等待超时时间

    ssl_ciphers  HIGH:!aNULL:!MD5;

    密钥的算法,这个写几个就行了

    ssl_prefer_server_ciphers  on;

    优先使用服务器的算法,当使用SSLv3和TLS协议时生效

    如果开了防火墙的话,别忘了放通443端口。

    6、增加http跳转

    免不了客户端还是使用http去访问页面,这个时候只要加上下边的配置就能实现从http跳转到https。

    server {

          listen 80;

          server_name www.yunweigonghui.com;

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

          location / {

    index index.html index.htm;

    }

  • 相关阅读:
    oracle python操作 增删改查
    python连接oracle
    opengl问题
    [转]C++ 获取文件夹下的所有文件名
    @RequestMapping[转]
    hdu 6082
    maven/ssm框架搭建
    windows下mysql解压版安装及centos下mysql root密码忘记
    maven创建web项目
    eclipse用tomcat发布网站的目录
  • 原文地址:https://www.cnblogs.com/ywgh/p/11683526.html
Copyright © 2020-2023  润新知