flask应用部署——安装环境


虽然以前安装过但是没有记录,这次重新安装,趁机记录下来,省得满世界地找

环境: centos7

安装nginx

参考资料
使用yum list nginx会发现nginx是1.6的版本,但现在nginx已经到了1.9,虽然不必那么新, 但是过旧的版本说不定会出现安全问题

# vim /etc/yum.repos.d/nginx.repo

输入

[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=1

然后

# yum list nginx  #你会发现nginx已经是1.8的版本
# yum install nginx
# systemctl start nginx #启动nginx

安装python3

centos7默认安装了python2.7的版本,但我习惯用python3,但是centos无法通过yum install python3安装, 只好自己编译了

安装必要的文件 …

为网站启用https并增加ssl证书


HTTPS和HTTP的区别

超文本传输协议HTTP协议被用于在Web浏览器和网站服务器之间传递信息。HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此HTTP协议不适合传输一些敏感信息,比如信用卡号、密码等。 为了解决HTTP协议的这一缺陷,需要使用另一种协议:安全套接字层超文本传输协议HTTPS。为了数据传输的安全,HTTPS在HTTP的基础上加入了SSL协议,SSL依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密。 HTTPS和HTTP的区别主要为以下四点:

  • https协议需要到ca申请证书,一般免费证书很少,需要交费。
  • http是超文本传输协议,信息是明文传输,https 则是具有安全性的ssl加密传输协议。
  • http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
  • http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

申请ssl证书

对于像我这样的穷学生或者不希望花钱的同学可以使用startssl免费ssl证书
当然如果可以,最好购买ssl证书,安全性上更有保障

对于怎么申请startssl免费证书这里不多说,网上很多教程,其中有几点是我在申请中遇到的问题,希望对大家有所帮助
* 在进行域名验证时不论如何startssl搜索不到我的域名注册邮箱,我已将whois保护关闭后还是一样
解决办法:一个不是办法的办法,因为我在qq邮箱使用了域名邮箱,所以我将域名邮箱管理员admin@honmaple.com 更改为postmaster@honmaple.com,然后发送验证邮件到该邮箱对域名进行验证

  • 如何导出公钥
    如果申请成功,在Tool Box点击Certificate List,Action中选择Retrieve导出zip包到本地, 在本地解压就会发现里面有对应服务器类型的crt证书 …