【腾讯云的1001种玩法】个人网站如何开启HTTPS?

首先,感谢腾讯云通过了我的入驻申请,感谢给我一个在这里发文的机会。

近日总有朋友问我的网站https是怎么搞得,其实很简单,但对于没搞过,没有经过各种测试的菜鸟来说,确实也是一桩麻烦事。所以在此写一篇我按照腾讯云官方教程实现https的方式,如有问题或发现错误之处,还请留言之处,毕竟我也不是很精,只是会搞,来分享一下。

在说之前,先描述一下我的服务器环境:

  • 一台Linux CentOS6云服务器
  • LNMP集成环境
  • 部署好的一个站点,可以通过域名直接访问

下图是我站点的初始化样子,可以看到只是输出一个字符串,啥也没有,并且没有https。 这无所谓,因为我们的重点是https,而不是网站内容

接下来就是配置https的关键步骤了,其实只需要三步而已

  1. 申请证书
  2. 修改Nginx的vhost配置文件
  3. 重启Nginx

1,申请证书步骤如下,腾讯云申请证书是很快的,这要给个大大的赞

登录腾讯云->进入管理中心,出现下图:

然后鼠标放到红色框的地方,会出现下拉框,点击上图中箭头指的位置->ssL证书管理,出现下图:

如果您还没有使用过,列表应该是空的,然后点击上图中红色框中的申请证书按钮,出现下图:

我们可以直接使用默认的免费版证书,点击上图中确定按钮,出现下图:

在这个页面,在通用名称一栏输入域名,在申请邮箱一栏输入有限,其他可选,下图以我的为例:

然后点击下一步,会让你验证,直接选择 自动DNS验证

然后点击上图中确认申请,会弹框提示已提交,然后到列表中就能看到类似的下图:

在这个列表中,状态一列,我这里显示的已颁发,实际上这里应该是审核中,因为我这个域名之前已经申请过了,所以你们操作完回到这一步,显示的是审核中,然后腾讯审核的效率还是挺快的,几分钟后就颁发下来了。

证书颁发下来之后,然后点击下载,把这个证书下载下来,下载下来是个压缩包,解压之后,打开目录,出现下图:

上图中内置了四种服务环境,选择自己对应的服务环境,如果没有您的环境,可联系腾讯云,我这里是Nginx,打开目录,出现下图:

然后把上图中这两个文件上传到服务器的Nginx配置文件目录,我个人是上传到/usr/local/nginx/conf,但是我有个强迫症,所以我在这个conf目录创建了一个ssl目录,然后在ssl目录中,存放了一堆目录,每个目录都代表的是一个域名,每个目录中存放的就是该域名对应的这两个crt和key文件,上传方式多种,我用的是scp命令上传,挺方便,如下图:

上传完了之后,就开始配置域名对应的vhost文件了,完整配置如下:

下面是上图中完整的核心代码

server {
        listen 80;
        server_name test.sailengsi.com;#换成你的域名
        return 301 https://$server_name$request_uri;
}
server {
        listen 443;
        server_name test.sailengsi.com;#换成你的域名
        ssl on;
        ssl_certificate ssl/test/1_test.sailengsi.com_bundle.crt;#证书文件
        ssl_certificate_key ssl/test/2_test.sailengsi.com.key;#秘钥文件
        ssl_session_timeout 5m;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_ciphers  ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
        ssl_prefer_server_ciphers   on;
}

解释一下,第二个server,大家肯定能明白,这是官方给的实例,具体可参考文末给的链接。

第一个server,是为了把80端口给重定向到443,也就是把http的访问重定向到https,不然,直接访问https是没问题,但是用户访问时,可能就直接输入域名啥的,这个时候默认走的是80端口,所以我们通过这一步直接重定向,就做到了全站https。

ssl配置中有个注意的地方:

  1. ssl_certificatessl_certificate_key,后面的引入的路径,要么是绝对路径,从/开始,要么就像我这样,要么直接在当前目录下开始找,不要写./或者../啥的,Nginx不支持这种路径,会报错,会报错,会报错!!!

配置完成之后,重启以下命令重启Nginx:

/usr/local/nginx/sbin/nginx -s reload

然后,再次刷新页面,就会发现,直接变成https,成功的界面如下图:

到这里,基本上网站开启Nginx就结束了,其实这些内容,在腾讯云官方已有说明,但缺少一个傻瓜式的教程,毕竟倘若不太了解服务器,折腾这玩意,还是有些困难,所以在此分享一下经验。

参考链接:官方文档

如有错误,还请留言之处,也可直接联系本人,谢谢。

QQ:823393100

邮箱:sailengsi#126.com #换成@

个人博客:赛冷思官方博客

Github:赛冷思Github

相关推荐

借助腾讯云CDN开启全站https及问题解决分享

【腾讯云的1001种玩法】IIS7实现全站HTTPS访问

原创声明,本文系作者授权云+社区-专栏发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

赛冷思的专栏

1 篇文章2 人订阅

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏WebHub

const web = HTTP1.1 => HTTP2.0

HTTP/2.0是下一代HTTP协议, 由IETF的 [httpbis] 工作小组进行开发。自1999年http1.1发布后的首个更新, HTTP 2.0在20...

811
来自专栏Linyb极客之路

HTTPS安全最佳实践

HTTPS对于保护你的网站至关重要。但是你还需要避免许多陷阱 1. 没有混合内容

973
来自专栏北京马哥教育

傻瓜式配置mutt

介绍 mutt是什么?用一句话介绍就是:它是linux终端有名的邮件客户端,它运行在终端,受到很多linux狂热分子和无限最求效率的人的热捧,我当然没有那么ge...

2784
来自专栏FreeBuf

北极熊扫描器3.5发布:增加超级搜索等功能

文中提及的部分技术、工具可能带有一定攻击性,仅供安全学习和教学用途,禁止非法使用! ? 软件介绍 本软件是一款为白帽子提供网站安全检测的软件,软件完全免费,您可...

1885
来自专栏web前端

JavaWeb 入门1

一、相关基础知识 1、C/S(Client/Server)架构和B/S(Browser/Server)架构 首先说C/S架构,简单讲其实很常见,类似QQ等需要下...

18810
来自专栏FreeBuf

如何在macOS上监听单个应用HTTPS流量

写在前面的话 如果你准备对网络协议进行逆向分析或进行任何与网络安全有关的活动时,可能是为了了解协议运行机制,也有可能是为了查找敏感信息,你或多或少都需要收集一定...

2215
来自专栏程序员八阿哥

Nginx与前端开发

作为前端开发,即使没用过Nginx,但一定听说过上面这句话。这句经典的话,基本构成了所有人对Nginx的第一印象。

691
来自专栏前端架构

web安全nginx需设置HTTP header参数及phpcms设置CSP的缘由及注意事

X-Frame-Options:主要还是为了防止click hack,参看《再谈Hijacking——JavaScript ClickJacking原理浅析》。...

842
来自专栏散尽浮华

Gerrit日常操作命令收集

Gerrit代码审核工具是个好东西,尤其是在和Gitlab和Jenkins对接后,在代码控制方面有着无与伦比的优势。 在公司线上部署了一套Gerrit系统,在日...

1936
来自专栏同步博客

Git服务器搭建

  Git是目前世界使用最广泛的分布式版本控制系统,它是由林纳斯·托瓦兹(Linus Torvalds)创作,最初的目的是为了更好地管理Linux内核开发而设计...

683

扫码关注云+社区