Django项目上传部署到阿里云Centos7

第一步:
将本地测试好的项目及数据库压缩

第二部,创建虚拟环境:

mkdir -p /data/env

virtualenv --python=/usr/bin/python3 ll_env

然后进入

cd /data/env/ll_env/bin

启动虚拟环境:

source activate

默认使用的是SQLite数据库,就不用做此操作。

进入到项目目录,通过python3 manage.py runserver 运行一下项目,如果能正常启动则进行下一步,不能正常运行往上检查。

在项目根目录里添加uwsgi配置文件

cd /data/wwwroot/xxxxx

uwsgi -x xxx.xml

这里面出一句嘴,必须也要学会重启和停掉uwsgi进程

配置Nginx配置文件。

留意:一定要注意Uwsgi和Nginx配置文件里的项目路径和静态资源路径,填写正确了才能成功访问。不然会出现502错误。还有就是,修改Django文件和其它配置文件之后,一定要重启Uwsgi和Nginx,不然不生效。

Uwsgi和Nginx重启方法:

#查看Uwsgi进程

ps -ef|grep uwsgi

#用kill方法把uwsgi进程杀死,然后启动uwsgi

killall -9 uwsgi

#启动方法

uwsgi -x mysite.xml

#Nginx平滑重启方法

/usr/local/nginx/sbin/nginx -s reload

然后在浏览器里访问服务器地址(域名),就能查看到项目。

如果想使用域名访问项目,先在域名管理后台把域名解析到服务器IP上来,之后在Nginx配置文件里绑定域名。然后在浏览器里通过绑定的域名访问项目。

出现例如下面的错误:

当运行python manage.py runserver 0.0.0.0:8001时候,出现
Invalid HTTP_HOST header: '192.168.114.25:8001'. You may need to add u'192.168.114.25' to ALLOWED_HOSTS.

解决办法:

django-admin.py startproject project-name创建的项目中去修改 setting.py 文件:

ALLOWED_HOSTS = ['*'] 

别忘了杀死uwsgi进程,并重启它,还有nginx也要重启。

你可能感兴趣的:(Django,python)