#升级系统
apt-get update
apt-get upgrade
#安装nginx
apt-get -y install nginx uwsgi
#安装python falsk 环境搭建
apt-get -y install uwsgi uwsgi-plugin-python python-imaging python-pip mongodb
pip install flask flask-sqlalchemy flask-WTF flask-login Flask-Principal flask-mail flask-script flask-mongoengine flask-restful flask-uploads flask-cache flask-and-redis flask-Assets cssmin
#配置uwsgi#异步要添加enable-threads = true这一行在uwsgi.ini文件里。touch-reload=/web/www/添加为后面目录发生改变时重启uwsgi
cd /etc/uwsgi/apps-available/
touch myuwsgi.ini
echo '
[uwsgi]
#开启的进程数量,等同于processes
workers=8
#链接数,默认是128
listen=1024
#日志文件大小
log-maxsize = 50000000
#只记录错误日志
disable-logging = true
#加载指定的程序
plugins=python
#开启虚拟主机模式
vhost=true
#可用套接字/tmp/uwsgi.sock,也可用端口127.0.0.1:9001
socket=127.0.0.1:9001
#异步
enable-threads = true
' > myuwsgi.ini
指定python3 ,可使用虚拟环境home=/web/envs/env/ ,如果需要就添加这一行,env是自定义的虚拟环境目录。
echo "[uwsgi]
workers=8
listen=1024
plugins=python3
vhost=true
socket=127.0.0.1:9001
enable-threads = true
disable-logging = ture
" > myuwsgi.ini
ln -s /etc/uwsgi/apps-available/myuwsgi.ini /etc/uwsgi/apps-enabled/myuwsgi.ini
#python-flask 测试文件
mkdir app
cd app
touch manage.py
echo "#!/usr/bin/env python
#coding=utf-8
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello World!'
if __name__ == '__main__':
app.run()" > manage.py
#添加执行权限
chmod +x manage.py
#nginx配置,server_name添加自己的域名,root网站目录,uwsgi_pass这里要跟uwsgi配置一样的端口,UWSGI_CALLABLE,UWSGI_MODULE参考上面的代码对应程序文件名、应用名
echo 'server
{
listen 80;
server_name 127.0.0.1;
index index.html index.htm;
root /web/www/app;
location ^~ /static {
alias /web/www/app/application/static;
}
location / {
include uwsgi_params;
uwsgi_pass 127.0.0.1:9001;
uwsgi_param UWSGI_PYHOME $document_root;
uwsgi_param UWSGI_CHDIR $document_root;
uwsgi_param UWSGI_MODULE manage;
uwsgi_param UWSGI_CALLABLE app;
}
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
}
location ~ .*\.(js|css)?$
{
expires 1h;
}
#access_log /web/logs/access.log access;
}' > default.conf
#代码有变动必需重启uwsgi才能生效,修改nginx配置文件也一定要重启nginx才能生效
service nginx restart
service uwsgi restart