一、配置django项目
1、修改配置文件settings.py
DEBUG = False
ALLOW_HOSTS=['*']
#配置静态文件所存放的路径
STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')
2、收集静态文件
python manager.py collectstatic
3、收集所需依赖库
#收集项目开发中所需的依赖库并输出到requirement.txt文件中
pip freeze > requirement.txt
4、ubuntu中安装所需依赖库
#上一步中所收集到的依赖库
pip install -r requirement.txt
二、uwsgi配置
1、安装uwsgi
pip install uwsgi
2.、创建uwsgi的配置文件并做相应配置
[uwsgi]
#主进程
master = true
#进程数
processes = 4
#每个进程的线程数
threads=2
#项目的存放路径
chdir = /home/alvin/Projects/code/dailyfresh
#项目中wsgi.py文件所在路径
wsgi-file = dailyfresh/wsgi.py
#如果不借助nginx则用http://ip:port
#http = 192.168.1.8:8089
#如果使用nginx则用socket://ip:port
socket = 192.168.1.8:8089
#pid生成文件
pidfile=uwsgi.pid
#用于存放uwsgi产生的日志的文件,配置后uwsgi为后台启动
daemonize=uwsgi.log
3、启动uwsgi
sudo uwsgi --ini [uwsgi配置文件所在路径] #如:/home/alvin/uwsgi.ini
4、停止uwsgi
#如果配置了daemonize,则用如下命令
sudo uwsgi --stop uwsgi.pid文件所在路径 #如:/home/alvin/uwsgi.pid
#如果没有配置daemonize 则直接Ctrl + C退出即可
三、Nginx配置
1、打开nginx的配置文件,一般在/usr/local/nginx/conf/nginx.conf
sudo vi /usr/local/nginx/conf/nginx.conf
2、监听80端口,找到http下的server做如下配置
server {
listen 80; #监听80端口
server_name localhost; #本地主机
location / {
include uwsgi_params;#包含uwsgi参数
#当监测到访问的是本机ip时则转发到如下地址进行请求,即转发给uwsgi服务器
uwsgi_pass 192.168.1.8:8089;#uwsgi配置文件中配置的地址
}
#配置django项目的静态文件,当访问的路径中包含static的时候则直接请求本机中静态文件所在路径
location /static {
#本机中项目静态文件所在路径,静态文件需提前收集好
alias /home/alvin/Projects/code/dailyfresh/staticfiles/;
}
3、启动nginx
#启动nginx服务
sudo /usr/local/nginx/sbin/nginx
#当nginx配置文件有改动时需重新启动nginx
sudo /usr/local/nginx/sbin/nginx -s reload
4、输入本机ip地址测试是否部署成功