执行该操作请确保已安装python3环境,若需安装python3.5,请移步这里,项目上线一般都会使用uWSGI服务器
1. uWSGI服务器安装
- 将uWSGI的tar包发送linux
- 解压tar:
tar -zxvf uwsgi-2.0.17.tar.gz
- cd到解压目录下,编译:
make
- 为了可以更方便的执行 uwsgi #启动uWSGI服务器,定制链接:
ln -s /usr/local/uwsgi-2.0.17/uwsgi /usr/bin/uwsgi
则可以在任意目录下执行uwsgi
去启动uWSGI服务器
2. uWSGI部署django项目
- 在Django项目的settings.py中修改配置
#修改数据库配置
DEBUG = False #去掉开发模式
ALLOWED_HOSTS = ["*"] #开放访问host
DATABASES = { #合适数据库参数
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'ems',
'USER': 'root',
'HOST': 'localhost',
'PORT': '3306',
'PASSWORD': '123456'
}
}
-
发送项目到linux并做移植
python manage.py makemigrations
python manage.py migrate
- 编写uWSGI的配置文件
随意找一个目录,定义一个文件:config.ini
[uwsgi]
http = 192.168.134.128:9000 # uWSGI服务器访问地址,此处应填写服务器eth0的ip
#uWSGI和nginx通信的port
socket = 192.168.134.128:9001
# the base directory (full path)
chdir = /usr/local/django_projects/ems #项目所在目录
# Django's wsgi file
wsgi-file = ems/wsgi.py #基于项目目录的相对路径
# maximum number of worker processes
processes = 4
#thread numbers startched in each worker process
threads = 2
#monitor uwsgi status 通过该端口可以监控 uwsgi 的负载情况
stats = 192.168.134.128:9002
# clear environment on exit
vacuum = true
pidfile = /usr/local/django_projects/ems/uwsgi.pid #进程ID存放于此文件,位置可以自定
义
#daemonize-run ,file-to-record-log
daemonize = /usr/local/django_projects/ems/uwsgi.log #后台启动模式,日志文件记录位置
自定义
#http://ip:port/static/...请求会进入该目录找资源,此处可以指向某个app下的static目录
#或是将所有静态文件汇总到项目的某一个目录下,然后配置在此是更好的选择
#汇集所有已安装app的静态资源到一个目录下,请参见后续内容
#http://ip:port/static/a/b/c/d.png ==> /usr/local/xxxx/static/a/b/c/d.png
static-map =/static=/usr/local/django_projects/ems/static
- 根据如上配置启动uWSGI服务器
uwsgi --ini config.ini
网友评论