700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > phpstudy安装ssl证书_给网站安装SSL证书

phpstudy安装ssl证书_给网站安装SSL证书

时间:2020-01-17 08:12:15

相关推荐

phpstudy安装ssl证书_给网站安装SSL证书

突然有一天老板让我给用Flask写的小网站安装SSL证书,虽然之前没弄过但是感觉应该不难。

主要分为以下几个步骤:

购买域名购买SSL证书DNS(域名解析)部署SSL证书

1. 购买域名

因为我只负责SSL证书的部署,所以域名公司已经提前在GoDaddy上买好了。我只需要他们提供给我GoDaddy的账号给我就行了,方便我后面配置DNS。

2. 购买SSL证书

因为阿里云提供了1年免费的Symantec DV SSL证书,所以能省一点是一点。直接点击“立即购买”就行了。

购买SSL证书

回到阿里云SSL证书管理控制台,点击证书后面的“申请”链接,在侧边栏按照提示填写申请信息。因为我用的是GoDaddy的DNS服务,所以选择“手工DNS验证”,如果你用是阿里云DNS可以自动完成域名授权验证。

证书申请

3. DNS(域名解析)

然后根据验证信息到GoDaddy相应的域名下添加一条DNS记录。

添加DNS解析记录

4. 部署SSL证书

没过一会儿证书就签发下来了,在“已签发的证书”中找到相应的证书,点击“下载”,根据对应的服务器类型选择证书下载。

下载SSL证书

将下载的证书解压上传服务器,这里我使用XShell附带的上传工具Xftp上传,你也可以选用其他工具或命令进行上传。

上传SSL证书

按照以下命令配置,相应的地方需要修改成你自己的配置:

server {# 侦听443端口,这个是ssl访问端口listen 443;# 定义使用访问域名,修改成自己的域名server_name ;# 注意这些路径是相对于/etc/nginx/nginx.conf文件位置ssl on;ssl_certificate cert/.pem; # 修改成自己的证书名称,以下同ssl_certificate_key cert/.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;location / {proxy_passhttp://127.0.0.1:8090; # 根据自己Web运行端口进行修改proxy_set_header X-Real-IP $http_x_forwarded_for;proxy_set_header X-REMOTE-ADDR $remote_addr;proxy_set_header X-Forwarded-For $http_x_forwarded_for;proxy_set_header PROXY-ADD-X-Forwarded-For $proxy_add_x_forwarded_for;proxy_connect_timeout 90;proxy_send_timeout 90;proxy_read_timeout 90;}}server {# 80端口是http正常访问的接口listen 80;server_name ; # 修改成自己的域名# 在这里,我做了https全加密处理,在访问http的时候自动跳转到httpsrewrite ^(.*) https://$host$1 permanent;location / {proxy_passhttp://127.0.0.1:8090; # 根据自己Web运行端口进行修改proxy_set_header X-Real-IP $http_x_forwarded_for;proxy_set_header X-REMOTE-ADDR $remote_addr;proxy_set_header X-Forwarded-For $http_x_forwarded_for;proxy_set_header PROXY-ADD-X-Forwarded-For $proxy_add_x_forwarded_for;proxy_connect_timeout 90;proxy_send_timeout 90;proxy_read_timeout 90;}}

检查Nginx配置并重启Nginx服务:

nginx -tnginx -s reload

现在再回到浏览器访问自己的网站,是不是变成绿色的HTTPS了呢。

踩坑提示

在使用GoDaddy之前,我们公司所有的域名解析都是在Cloudflare上。Cloudflare人性化的地方就是自带SSL证书,只要开启“Always Use HTTPS”的选项开关即可HTTPS访问你的网站了,连证书申请和配置都省了。但是如果你一开始不知道的话,傻傻地按照我上面的步骤走下来,到最后会发现网站因为提示重定向太多而无法访问。我也是查了很多资料才在一篇博客上看到要将Cloudflare的SSL模式选成“Full (strict)”才能使用自己配置的SSL证书。具体原理可以查看Cloudflare官网介绍和相关博客。

亦正亦邪的Cloudflare

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。