搭建博客
先感谢国光以及pingszi师傅的开源和修改
期间也对该项目小改(就改了点前端和后端)
环境:ubutun18.04
https://github.com/sqlsec/Django-Hexo-Matery
https://github.com/pingszi/my_blog
创建数据库
create database `django_blog` default character set utf8mb4 collate utf8mb4_unicode_ci;
create user 'penson'@'127.0.0.1' identified by 'password';
grant all privileges on django_blog.* to 'penson'@'127.0.0.1';
记得修改项目里的配置文件 然后启动就行具体参考 参考文献 启动教程 https://blog.csdn.net/geek_xiong/article/details/97015560
在服务器安装第三方库时注意版本(应该是这么些)
django-simpleui==4.0.2
django==3.0.3
django-mdeditor==0.1.18
django-pure-pagination
mistune==0.8.4
django-import_export
mysqlclient==1.4.6
Pillow
运行时会缺少mysql-client,根据报错信息搜索即可
搭建nginx+uwsgi
安装好nginx后
安装python3 的 uwsgi库
但是安装的时候报了错, 原因是少了个lib 还需安装依赖 apt-get install libpython3.5-dev
在进行安装 pip3 install uwsgi
开始测试 创建test.py
def application(env, start_response):
start_response("200 OK",[('Content-Type','text/html')])
return [b"Hello uwsgi"]
启动服务
uwsgi --http :7001 --wsgi-file uwsgi_test.py
测试成功后
开启部署django
将/etc/nginx/uwsgi_param 复制到django项目的根目录下
创建一个目录存放uwsgi配置
mkdir uwsgi && cd uwsgi
vim mysite_uwsgi.conf
写入以下内容
[uwsgi]
socket = 127.0.0.1:8002
chdir = /home/leyton/my_pro/mysite/
wsgi-file = mysite/wsgi.py
processes = 4
threads = 2
stats = 127.0.0.1:8080
vhost = true
部署nginx服务
进入/etc/nginx/sites-enabled/目录下
cd /etc/nginx/sites-enabled/ 创建project.conf配置文件
vim project.conf
写入以下内容
server {
listen 80;
server_name mysite.abc;
charset utf-8;
client_max_body_size 75M;
location /static {
alias /home/leyton/my_pro/mysite/static;
}
location / {
include uwsgi_params;
uwsgi_pass 127.0.0.1:8002;
#include /home/leyton/my_pro/mysite/uwsgi_params;
}
}
重启nginx
/etc/init.d/nginx restart
能正常通过域名访问后,用nohup挂载uwsgi
#启动服务
nohup uwsgi --ini /root/my_blog/uwsgi/mysite_uwsgi.conf >> /root/my_blog/log_app.out>&1 &
#关闭服务
kill -9 $(ps -aux | grep uwsgi | awk '{print $2}')