部署:
uwsgi配置:
[uwsgi]
# Django-related settings
http = 127.0.0.1:8000
#socket = 127.0.0.1:8000
chdir = /Users/xiaoyuan/Desktop/1807projects/MyBlog
module = MyBlog.wsgi
master = true
processes = 4
threads = 2
daemonize = uwsgi.log
pidfile = uwsgi.pid
virtualenv = /Users/xiaoyuan/.virtualenvs/1807_blog
收集静态资源:
STATIC_ROOT = os.path.join(BASE_DIR, 'static/')
python3 manage.py collectstatic
nginx配置 sudo apt install nginx /etc/nginx
写到http括号下
server {
listen 80;
server_name localhost;
#动态请求
location / {
include uwsgi_params;
uwsgi_pass 127.0.0.1:8001;
}
#静态
location /static {
alias /Users/xiaoyuan/Desktop/py_projects/MyBlog/static ;
}
}
启动nginx
/etc/init.d/nginx start 启动
/etc/init.d/nginx stop 或killall -9 nginx 关闭
/etc/init.d/nginx restart 重启
服务器部署:
第一步:sudo apt update 和 sudo apt upgrade
第二步:安装pip sudo apt install python3-pip
第三步:安装虚拟环境 sudo pip3 install virtualenv
可能会出错:分析原因
locale是用来设置软件运行的语言环境,所以语言环境设置有问题
解决故障 复制这三条 命令 一条一条输入 在登入云服务器
重新设置语言环境,最简单的解决办法:
第一条
echo "export LC_ALL=en_US.UTF-8" >> /home/XXX/.bash_profile 代表(特定用户)
第二条
echo "export LC_ALL=en_US.UTF-8" >> /etc/profile 代表(所有用户)
第三条
exit
第四步:sudo pip3 install virtualenvwrapper
第五步:配置虚拟环境
vi .bashrc
复制这三条命令到文档
export WORKON_HOME=$HOME/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
source /usr/local/bin/virtualenvwrapper.sh
激活
source .bashrc
第六步:创建虚拟环境
第七步:安装数据库 sudo apt-get install mysql-server mysql-client
第八步(本地):导出本地数据库 mysqldump -uroot -p 1807_blog_db > /Users/xiaoyuan/Desktop/blog.sql
第九步(本地):导出本地依赖第三方 pip freeze > requirements.txt
第十步:想任何办法把数据库和依赖文件还有源码 上传到服务器 git ftp scp
第十一步:在云端创建一个和本地数据库一样的库,并导入数据 source /xxx/xx/xx/blog.sql
第十二步:安装nginx sudo apt-get install nginx
安装uwsgi pip install uwsgi
第十三步:配置uwsgi和nginx 和本地部署一样
第十四步:启动uwsgi
uwsgi --ini uwsgi.ini 启动
uwsgi --stop uwsgi.pip 关闭
第十五步:启动nginx
/etc/init.d/nginx start 启动
/etc/init.d/nginx stop 或killall -9 nginx 关闭
/etc/init.d/nginx restart 重启
第十六步:大工完成
发送验证码:
邮件配置:
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.163.com'
EMAIL_PORT = 25
# 发送邮件的邮箱
EMAIL_HOST_USER = 'jikedaohang@163.com'
# 在邮箱中设置的客户端授权密码
EMAIL_HOST_PASSWORD = '123456abc'
# 收件人看到的发件人
EMAIL_FROM = 'python<jikedaohang@163.com>'
网友评论