什么是https?

https 全称:Hyper Text Transfer Protocol over Secure Socket Layer,是http的安全版。即http下加入SSL协议层,因此https的安全基础就是SSL,所以加密内容需要SSL。

配置过程

首先需要申请一个证书,可以申请一个免费的。

如何申请

我是用的腾讯云,云产品-》域名与网站-》SSL证书管理

然后选免费版的,一般免费版有效期是一年,然后填各种信息,提交审核就好了,审核很快的,一个小时工作时间左右吧

审核成功后就可以在证书列表里下载证书了,下载出来是一个压缩包,里面有各种版本的证书:Apache、IIS、Nginx、Tomcat;

我们这里用到的是nginx版本证书,一个公钥,一个私钥。将其上传到服务器目录,我是传到了 /etc/pki/nginx 目录下,记住这个目录哦,待会配置的时候会用到

先确认nginx安装时已编译http_ssl模块,也就是执行 nginx -V 命令查看是否存在--with-http_ssl_module。一般都会有的,如果没有,则需要重新编译nginx将该模块加入。

修改Nginx配置

打开 Nginx 的默认配置文件 /etc/nginx/nginx.conf ,如何打开和编辑请参考上一篇文章《云服务器搭建 Nginx 静态网站

打开后有两个server配置对象

第一个是监听80端口的,内容请参考如下伪代码:

server {
listen 80;
server_name 你的域名 www.你的域名;
root /data/www(你nginx配置的静态资源目录); # Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf; # 将http强制转https
location / {
rewrite (.*) https://www.你的域名$1 permanent;
} error_page 404 /404.html;
location = /40x.html {
} error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}

第二个是监听443端口的,默认是注释的,先取消注释,内容参考如下:

server {
listen ssl http2 default_server;
listen [::]: ssl http2 default_server;
server_name 你的域名 www.你的域名;
root /data/www(你nginx配置的静态资源目录);
    ssl_certificate "/etc/pki/nginx/1_www.dingjianjun.cn_bundle.crt"(你刚才传到服务器上的证书地址,叫你记住的哦);
    ssl_certificate_key "/etc/pki/nginx/2_www.dingjianjun.cn.key"(你刚才传到服务器上的证书地址);
    ssl_session_cache shared:SSL:1m; ssl_session_timeout 10m;
    ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on;
    # Load configuration files for the default server block.
    include /etc/nginx/default.d/*.conf;
    location / {     }
    error_page 404 /404.html;
    location = /40x.html {     }
    error_page 500 502 503 504 /50x.html;
    location = /50x.html {     }
  }

重启nginx

nginx -s reload

顺利的话,你用浏览器访问你的域名,应该就能自动变成https了,就不用看下面的了

----------------------------------------分割线-----------------------------------------------

我自己遇到过一个问题,就是重启失败吧,好像是80端口被占用了

列出监听的TCP端口

netstat -ltunp

我是把这个冲突的进程杀死了,可以杀死指定PID的进程,比如我上面那个进程的PID是17220

kill 

然后再重启nginx:

nginx -s reload

到这里应该就可以了,自己多实践多调研吧,每个人情况可能不一样,希望对你有帮助!

 

nginx启用https访问的更多相关文章

  1. Nginx 启用 https

    在nginx.conf中增加新server配置 server { listen ; server_name www.some.com; ssl on; ssl_certificate sslkey/s ...

  2. nginx配置https访问

    一.准备 环境:centos6.8 nginx:1.13.6 二.开始       首先安装依赖包: yum install -y gcc gcc-c++ autoconf automake make ...

  3. Tomcat 下启用 https:// 访问

    步骤: 1 创建 .keystore 文件 JDK中自带了keytool工具用于生成证书文件 keytool工具在$JAVA_HOME/bin 目录下可以使用命令 keytool -genkey -a ...

  4. 阿里云 rails nginx 配置https访问

    1.申请免费型dv ssl证书:https://common-buy.aliyun.com/?spm=a2c4e.11155515.0.0.7zzvOZ&commodityCode=cas#/ ...

  5. nginx 支持https访问

    1,先确认nginx安装时已编译http_ssl模块. 就是执行nginx -V命令查看是否存在--with-http_ssl_module.如果没有,则需要重新编译nginx将该模块加入.yum安装 ...

  6. windows nginx配置https访问

    本文主要记录在windows下安装nginx 环境:win10-64位. 1.  到nginx官网上下载相应的安装包,http://nginx.org/en/download.html: 下载进行解压 ...

  7. nginx配置ssl证书实现https访问

    一,环境说明 服务器系统:ubuntu16.04LTS 服务器IP地址:47.89.12.99 域名:bjubi.com 二,域名解析到服务器 在阿里云控制台-产品与服务-云解析DNS-找到需要解析的 ...

  8. 阿里云 nginx配置ssl证书实现https访问

    一,环境说明 服务器系统:ubuntu16.04LTS 服务器IP地址:47.89.12.99 域名:bjubi.com 二,域名解析到服务器 在阿里云控制台-产品与服务-云解析DNS-找到需要解析的 ...

  9. [转帖]nginx配置ssl证书实现https访问

    https://www.cnblogs.com/tianhei/p/7726505.html 今天就是如此处理的 感觉挺不错的. 一,环境说明 服务器系统:ubuntu16.04LTS 服务器IP地址 ...

随机推荐

  1. 49.大量qq号及qq密码挖掘到结构体并实现精确分配内存以及快速排序

    原数据: 处理后的数据: 完整代码: //思路; //数据清洗(把空格替换成'\0') -> 精确获取每一行(要提前获取source的总长度) -> 获取出每一行再精确分割并把分割后的数据 ...

  2. C++的继承和Java继承的比较

    在C++中继承可分为公有继承(public)保护继承(protected)和私有继承(private),而在Java中默认只有一种继承(相当于C++中的公有继承)下面我们来看一段代码 #include ...

  3. Spark scheduler

    触发Spark scheduler的入口是调用者代码中的action操作,如groupByKey,first,take,foreach等操作.这些action操作最终会调用SparkContext.r ...

  4. vue2细节变化的用法

    1.v-el和v-ref合并为一个属性:ref 原来:v-el:my-element 现在: ref="myElement", v-ref:my-component 变成了这样:  ...

  5. 03006_DOS操作数据乱码解决

    1.我们在dos命令行操作中文时,会报错 insert into sort(sid,sname) values(2,"电视机"); ERROR 1366 (HY000): Inco ...

  6. 【Codecraft-18 and Codeforces Round #458 (Div. 1 + Div. 2, combined) C】 Travelling Salesman and Special Numbers

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 会发现. 进行一次操作过后. 得到的数字肯定是<=1000的 然后1000以下可以暴力做的. 则我们枚举第1步后得到的数字x是 ...

  7. 【CS Round #39 (Div. 2 only) B】Circle Elimination

    [Link]:https://csacademy.com/contest/round-39/task/circle-elimination/ [Description] [Solution] 把n个点 ...

  8. 32款iOS开发插件和工具介绍[效率]

    插件和工具介绍内容均收集于网络,太多了就不一一注明了,在此谢过!   1.Charles 为了调试与server端的网络通讯协议.经常须要截取网络封包来分析. Charles通过将自己设置成系统的网络 ...

  9. Spring中的AOP注解方式和XML方式

    应掌握内容:1. AOP的全名2. AOP的实现原理[静态代理和动态代理]3. 注解方式的配置4. 通知类型     A. 每种通知的特点和使用方式    B. 获取各种数据,方便日后操作5. 执行表 ...

  10. MyBatis学习总结(12)——Mybatis+Mysql分页查询

    package cn.tsjinrong.fastfile.util; /**  * @ClassName: Page  * @Description: TODO(分页组件的父类,用来封装分页的 通用 ...