Django在Mac下的部署

1.布署前需要关闭调试、允许任何机器访问,打开settings.py文件
  DEBUG = False
  ALLOWED_HOSTS = ['*',]
2.在本机进入虚拟环境,执行命令导出当前需要的所有包
pip freeze > plist.txt
3.通过ftp软件FileZilla将项目代码和plist.txt文件上传到服务器(比如说你司买的阿里云)
4.创建虚拟环境,在虚拟环境上安装包
mkvirtualenv 虚拟环境名称
pip install -r plist.txt
5.安装uWSGI
pip install uwsgi
6.配置uWSGI,在项目目录下创建uwsgi.ini文件,配置如下
[uwsgi]
#使用nginx连接时使用
socket=127.0.0.1:8899
#直接做web服务器使用
#http=127.0.0.1:8899
#项目目录
chdir=/Users/Desktop/PycharmProjects/Django/项目名称
#项目中wsgi.py文件的目录,相对于项目目录
wsgi-file=项目名称/wsgi.py
processes=4
threads=2
master=True
pidfile=uwsgi.pid
daemonize=uwsgi.log
7.启动uWSGI /停止
uwsgi --ini uwsgi.ini

uwsgi --stop uwsgi.pid

#当然你可以看下进程有木有
ps ajx|grep uwsgi
8.Nginx-转向uwsgi

安装移步到:Nginx Mac 安装

9.找到Nginx路径,配置nginx.conf文件
/usr/local/etc/nginx/nginx.conf
10.nginx.conf文件的server节点下添加新的location项,指向uwsgi的ip与端口
location / {
            #将所有的参数转到uwsgi下
            include uwsgi_params;
            #uwsgi的ip与端口
            uwsgi_pass 127.0.0.1:8899;
        }
具体修改如图:
Django在Mac下的部署_第1张图片
11.png
11.在server节点下添加新的location项,用于处理静态文件,如上图
location /static {
        alias /var/www/dailyfresh/static/;
    }
12.在服务器上创建如下目录(我这里本机作为服务器)
sudo mkdir -vp /var/www/dailyfresh/static/
修改目录权限
sudo chmod 777 /var/www/dailyfresh/static/
Django在Mac下的部署_第2张图片
22.png
13.修改settings.py文件
STATIC_ROOT='/var/www/dailyfresh/static/'
14.收集所有静态文件到static_root指定目录
python manage.py collectstatic
15.开启器nginx 开启uwsgi
nginx

uwsgi --ini uwsgi.ini
16.127.0.0.1:8080 就能成功访问了

你可能感兴趣的:(Django在Mac下的部署)