话说回来,其实我本来服务器用的是Centos系统,奈何技术不行,天天下班晚上折腾都没有装好,卡在安装uwsgi那里了,看图吧:
浪费时间,只有放弃,网上搜了一下,用Centos和Debian的都挺多的,各有好处吧,Centos更注重安全,Debian用起来更方便。这个错误,我怀疑是我的服务器提供商:Linode造成的,因为我Google搜索了前十页,每一个结果我都查看了,只有几种结果,该装的东西都装了,为什么还会这样呢?只好算了,就算是记录下吧。
前段时间,把我的Windows笔记本装成了Ubuntu系统,后来知道Ubuntu的上游就是Debian,我就装了Debian9。用起来和Ubuntu差不多的,感觉还可以的,起码有一个好处,安装某些软件的时候,不需要什么wget,下载下来再安装,有的还要设置变量,麻烦的要死。很多软件,Debian的库里就有了,只需要apt-get,完事。
下面来说说安装过程吧,其实资料网上都有,只需要Google,我这里真的想说,判断一个技术人员,或者对技术向往的人,就看他会不会用Google,很多东西百度根本查不到的,尤其技术这块更明显。
再说下我的感受吧,后面就不啰嗦了。我个人觉得Python做网站的技术门槛挺高的,起码你得懂linux。而PHP把这个门槛降低了,想当初我啥都不懂,买个主机就可以做博客,Python就不行了,你得配置一堆东西才能自己做个像样的东西出来。
基本的就不说了,putty连接到服务器,root登录:
一:安装基础包:
1 sudo apt-get install build-essential 2 sudo apt-get install libncurses5-dev libncursesw5-dev libreadline6-dev 3 sudo apt-get install libdb5.1-dev libgdbm-dev libsqlite3-dev libssl-dev 4 sudo apt-get install libbz2-dev libexpat1-dev liblzma-dev zlib1g-dev
二:安装Python3
1 sudo apt-get update 2 sudo apt-get install python3.6
三:安装Nginx
1 sudo apt-get install nginx 2 # 查看版本 3 nginx -v
四:启动Nginx
1 sudo /etc/init.d/nginx start
停止Nginx:
sudo nginx -s stop
五:安装uWSGI
pip3 install uwsgi
六:安装虚拟环境virtualenv
pip3 install virtualenv
七:安装网站
首先cd到你做网站根目录的地址,然后
创建: virtualenv env 激活虚拟环境: source env/bin/activate 安装flask: pip3 install flask 退出虚拟环境: deactivate
八:写一个Flask文件
按照Flask和Python的代码规则,写一个文件,我的案例:
1 from flask import Flask 2 app = Flask(__name__) 3 @app.route("/") 4 def hello(): 5 return "你好呀,胡炎凯!" 6 if __name__ == "__main__": 7 app.run(host='0.0.0.0', port=80)
会Vim的可以直接在putty里写,我懒得学Vim,不如VSCode或者Sublime Text,Pycharm这些,一直没学,看视频都是跳过。再就是,如果你想绑定域名,也可以直接在host那里写上,就可以了。
然后停止Nginx,代码上面写过,然后打开80端口:
1 iptables -A INPUT -p tcp --dport 80 -j ACCEPT 2 # 如果想关闭打开的端口: 3 iptables -A INPUT -p tcp --dport 80 -j DROP
再就是进入虚拟环境,python3 run.py就可以了。