在阿里云上部署我们的Flask App(3)

首先看一下我们现在面临的三个问题:

1. 域名,可以看到我们的网站是通过远程主机IP登陆的,这样做显然不适合,这也是为什么买个域名是必须的了。

2. SSL, 简单来说SSL证书通过在客户端浏览器和Web服务器之间建立一条SSL安全通道,这也是我们浏览的很多网站都写着“https”的原因,Https协议是由SSL+Http协议构建的可进行加密传输、身份认证的网络协议.

3. 更新, 写出来的东西肯定不是最完善的啦,如果我们需要更新我们的配置应该怎么办呢?

一条一条的说:

域名

首先阿里云推荐的好像是在万网上买域名,这是合作还是一家我也不知道,因为我是用学生优惠在Namecheap上买的,同时还送一年的SSL,但是!划重点!由于我申请的是".me"结尾的域名,然后被告知,这个域名不能在国内备案。。。嗯~ o( ̄▽ ̄)o。。酸爽。国内备案好像支持的是.com,.cn,.wang啥的,具体的可以在网上搜得到,而.me是不能通过备案的。因此如果你也尝试解析了不支持备案的域名,就会跟我一样:

image

image.gif

无奈.jpg

当然,如果你能申请到了可以备案的域名,剩下的步骤也很简单,在购买域名的网站上,以namecheap和阿里云为例:

image

image.gif

在Name Servers上选择“Custom DNS”,并且添加如下两条即可。

然后在阿里云域名解析中有新手指引,跟着做就好了。

成了之后就是或许短暂或许漫长的等待。。。

SSL

这里推荐的是Let‘s Encrypt,进入之后点击Getstart会跳转到下面页面,然后我们点击 Visit the Certbot site去选择我们的系统和服务器。

image
image.gif

在这里选择服务器和系统,随后会带我们进入命令指引的部分。

image

image.gif

如果你和我一样的配置,那么下面的命令是你即将使用的:

$ sudo apt-get update
$ sudo apt-get install software-properties-common
$ sudo add-apt-repository universe
$ sudo add-apt-repository ppa:certbot/certbot
$ sudo apt-get update
$ sudo apt-get install certbot python-certbot-nginx 
image.gif

除此之外还有一点需要注意的,我们要为防火墙开启https:

sudo ufw allow https
sudo systemctl restart nginx
image.gif

这时我们的布置就完成了,但是这个只能使用90天,90天后我们要重新配置。因为我的域名没有备案成功,下面的步骤暂时没有研究,自动布置可能要写Shell吧。

更新

关于更新的问题,如果使用git的话其实是很简单的,但是因为我使用的是scp,所以只能使用删除部分文件然后重新远程拷贝的方法,就简单的小任务来说也不是很麻烦,当然肯定还是git更加方便地。

最后更新代码不要忘记重启一下Supervisor:

sudo supervisorctl restart
image.gif

你可能感兴趣的:(在阿里云上部署我们的Flask App(3))