zoukankan      html  css  js  c++  java
  • window10环境ngnix配置https记录

    一 背景

    移动端调用摄像头需https, 公司移动端网页版页面需调用摄像头,所以需配置https。但是项目未上线,还没有正式域名,只能自己生成证书了。

    二 步骤

     1 安装nginx,我的版本是1.12.2的

     2 openssl下载地址,我下载的Win64 OpenSSL v1.1.1m(msi版本),也可在我网盘中下载

      官网地址:https://slproweb.com/products/Win32OpenSSL.html

      网盘地址:链接:https://pan.baidu.com/s/1gljmcFAFSs5J5VWmfffxcA   提取码:ke28

       3 配置环境变量

      新增 OPENSSL_HOME:D:\dev\OpenSSL\OpenSSL-Win64\bin

      新增 OPENSSL_CONF:D:\dev\OpenSSL\OpenSSL-Win64\bin\openssl.cfg

      path追加:%OPENSSL_HOME%

       4 生成证书,我直接在ngnix下html目录中生成的,打开cmd到生成证书位置

      4.1 创建私钥

      执行命令:openssl genrsa -des3 -out demo.key 1024(demo是文件名,可以自定义),此处要输入和验证密码(本次设置为123456),请记住改密码,后面会用到。

     

       4.2 创建csr证书

        执行命令:openssl req -new -key demo.key -out demo.csr(key文件为刚才生成的文件,demo为自定义文件名),如下图所示。这里主要设置的是国家地区以及组织名称等信息,最重要的是Common Name,这里输入的就是我们要用https访问的域名。完成以上步骤后,ssl文件夹中会生成demo.csr和demo.key两个文件。 

     

        4.3 去除密码

        在加载SSL支持的Nginx并使用上述私钥时除去必须的口令,否则会在启动nginx的时候需要输入密码。

        在命令行中执行此命令:openssl rsa -in demo.key -out demo.key。如下图所示,此命令需要输入刚才设置的密码。 

         4.4 生成crt证书

          在命令行中执行此命令:openssl x509 -req -days 365 -in demo.csr -signkey demo.key -out demo.crt。

        4.5 证书生成完毕,我们在ssl文件夹中可以看到生辰的证书文件,我们要用到的就是demo.crt和demo.key。

      5 修改nginx配置,在server{}中加入如下代码,如下图所示

      
            #ssl证书的pem文件路径
            ssl_certificate      /html/demo.crt;
            #ssl证书的key文件路径
            ssl_certificate_key  /html/demo.key;
            #将请求转成https  80端口用这个
            #rewrite ^(.*)$ https://$host$1 permanent;
            #将请求转成https  非80端口用这个
            error_page 497 301 https://$http_host$request_uri;

    6 参考连接地址

       https://www.cnblogs.com/vincent-li666/p/5851463.html

      https://blog.csdn.net/sunroyfcb/article/details/83592553

      https://blog.csdn.net/weixin_44316575/article/details/85328224

  • 相关阅读:
    python之生成器
    flask_sqlalchemy filter 和filter_by的区别
    Linux 更新python至2.7后ImportError: No module named _ssl
    Linux pip 安装模块时,一直黄字错误:Could not find a version that satisfies the requirement
    Linux 创建python虚拟环境
    python 需求文件requirements.txt的创建及使用
    wget http://pypi.python.org/packages/source/s/setuptools/setuptools-2.0.tar.gz 下载时报错 ssl is required 解决办法
    结合daterangepicker实现Datatables表格带参数查询
    datatable 的ajax修改参数,post可以传参处理
    datatables 参数详解(转)
  • 原文地址:https://www.cnblogs.com/tong2018/p/15747703.html
Copyright © 2011-2022 走看看