首页 > 其他分享 >Django网站开发下

Django网站开发下

时间:2022-12-09 10:37:52浏览次数:44  
标签:run gunicorn 网站 tango Django -- 开发 proxy log


文章目录

  • ​​1 mysql版本太低的bug​​
  • ​​安装一些需要的应用​​
  • ​​<1> 退出虚拟环境​​
  • ​​<2> supervisor​​
  • ​​<3> 在虚拟环境安装 gunicorn​​
  • ​​<4> 在项目根目录下创建一个 gunicorn_start.sh 文件​​
  • ​​<5>修改权限​​
  • ​​<6> 运行​​
  • ​​<7> 3. 配置 Nginx​​
  • ​​<8> 配置Supervisor​​
  • ​​<10> 关于后台静态样式丢失问题​​
  • ​​else​​
  • ​​参考​​

1 mysql版本太低的bug

<1> 宝塔的mysql版本要是8.0 要高一点的,不然有些已经不用了

Django网站开发下_虚拟环境

<2> mysql的权限设置为所有人

Django网站开发下_mysql_02

<3> 在vscode里面进行数据库同步

(1)环境激活

Django网站开发下_mysql_03

(2)进入mysql里面查看表

Django网站开发下_mysql_04

(3)查看数据库

Django网站开发下_mysql_05

(4) 查看表

Django网站开发下_虚拟环境_06

(5)应用同步

Django网站开发下_mysql_07

这里是因为已经做了,所以 NO migrations to apply

安装一些需要的应用

<1> 退出虚拟环境

deactivate

Django网站开发下_ico_08

<2> supervisor

sudo apt install supervisor -y

Django网站开发下_mysql_09

<3> 在虚拟环境安装 gunicorn

要在有env的虚拟状态下安装

pip install gunicorn

Django网站开发下_ico_10

我这是因为我已经装过了

<4> 在项目根目录下创建一个 gunicorn_start.sh 文件

#!/bin/bash

NAME="MyBlog"
DJANGODIR=/home/tango/Desktop/DjangoDev/www/MyBlog #Django project directory
USER=tango # the user to run as
GROUP=tango # the group to run as
NUM_WORKERS=1 # how many worker processes should Gunicorn spawn
DJANGO_SETTINGS_MODULE=config.settings # which settings file should Django use
DJANGO_WSGI_MODULE=config.wsgi # WSGI module name

echo "Starting $NAME as `whoami`"

# Activate the virtual environment
cd $DJANGODIR
source /home/tango/Desktop/DjangoDev/env/bin/activate
export DJANGO_SETTINGS_MODULE=$DJANGO_SETTINGS_MODULE
export PYTHONPATH=$DJANGODIR:$PYTHONPATH

# Create the run directory if it doesn't exist
RUNDIR=$(dirname $SOCKFILE)
test -d $RUNDIR || mkdir -p $RUNDIR

# Start your Django Unicorn
# Programs meant to be run under supervisor should not daemonize themselves (do not use --daemon)
exec /home/tango/Desktop/DjangoDev/env/bin/gunicorn ${DJANGO_WSGI_MODULE}:application \
--name $NAME \
--workers $NUM_WORKERS \
--user=$USER --group=$GROUP \
--log-level=debug \
--log-file=-

Django网站开发下_虚拟环境_11

USER=server # the user to run as GROUP=server # the group to run as

这里的用户名要改为自己的比如:tango

更改成当前路径

Django网站开发下_虚拟环境_12

Django网站开发下_mysql_13

<5>修改权限

chmod +x gunicorn_start.sh

Django网站开发下_虚拟环境_14

<6> 运行

./gunicorn_start.sh

<7> 3. 配置 Nginx

location /static/ {
alias /home/tango/Desktop/DjangoDev/www/MyBlog/static/;
expires max;
access_log off;
log_not_found off;

}

location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_redirect off;
if (!-f $request_filename) {
proxy_pass http://127.0.0.1:8000;
break;
}


}

<8> 配置Supervisor

sudo vim /etc/supervisor/conf.d/myblog.conf

填入下面内容

[program:myblog]
command = *******/gunicorn_start.sh
user = server
autostart=true
autorestart=true

redirect_stderr = true
stdout_logfile = /var/log/myblog.log
stderr_logfile=/var/log/myblog.err

user = server
同样也要修改成为自己的用户名

最后要更新一下下

sudo supervisorctl update
sudo supervisorctl reload

<10> 关于后台静态样式丢失问题

修改 settings.py

STATIC_ROOT = os.path.join(BASE_DIR, "static")

Django网站开发下_虚拟环境_15

并在项目目录下新建一个 static 的文件夹

运行如下命令进行静态文件收集

python manage.py collectstatic

else

1 进去网页

python manage.py runserver 0.0.0.0:8000

Django网站开发下_mysql_16

2 杀死进程


Django网站开发下_mysql_17


标签:run,gunicorn,网站,tango,Django,--,开发,proxy,log
From: https://blog.51cto.com/u_15796263/5923932

相关文章

  • spring::注解开发@ComponentScan
    @ComponentScan@ComponentScan将@Controller@Service@Repository,@Component标识的类注入到spring容器这些相当于是<beanid=""class="">@ComponentScan相当于是xml......
  • DevEco Studio 3.1差异化构建打包,提升多版本应用开发效率
     HUAWEIDevEcoStudio是开发HarmonyOS应用及服务的一站式集成开发环境。本次分享DevEcoStudio3.1上线的新特性-差异化构建打包,定制多目标构建产物。很多应用需要......
  • 北辰津南游戏网站高防物理机租用
    不过占用内存较多,而Linux系统对php程序比较友好,更省内存,并且有的程序可能只支持某个操作系统。线路的选择对于我们来说有的时候十分纠结。如果我们是针对于本地用户,那么我......
  • 佛萨奇2.0智能合约开发系统源码逻辑
    ThisarticleiscompiledandreleasedbyWeChaT: kaifa873,whichisonlyforreferenceofprojectdevelopmentrequirements!telegram@sleu88矩阵定义:加载nump......
  • MAUI开发迁移AVD默认位置释放C盘空间
    默认情况下,VS2022启动MAUI工程后创建的AndroidVirtualDeviceManager(AVD)模拟器会在用户当前目录下,例如:C:\Users\登录账户\.android\avd下,每个Target一个avd文件夹,......
  • 北辰津南网站BGP物理机租用
    时我们曾经试图将服务利用其它IP地址进行发布,但犯罪分子很快就再次跟了上来。因此,我们做出了一个艰难的决定,即发布“黑洞”来舍弃一部分流量。这事实上传达出了这样的一种......
  • 北辰津南高防网站BGP物理机
    甚至需要按照特定的技术模型和算法,将这些数字转化为一些更具体的技术数字,例如并发多少个连接(很多时候,用户数与连接数不是一个概念)。同时,你还要对未来的用户增长做一个尽可......
  • 工业控制系统开发如何技术选型?
    简述工业控制系统,简称工控系统,一般运行在工业生产环境中具有特定功能设备的作业系统,比如收银系统、过磅称重系统、无人零售系统等。根据需求不同,有单片机、PLC、Linux、Wi......
  • Java基础-01-概述(什么是Java软件开发)
    1、何为编程?编程就是让计算机为解决某个问题而使用某种程序设计语言编写程序代码,并最终得到结果的过程。为了使计算机能够理解人的意图,人类就必须要将需解决的问题的思路......
  • 使用IDEA 进行 安卓开发
    OverridetheentrypointofanimageIntroducedinGitLabandGitLabRunner9.4.Readmoreaboutthe extendedconfigurationoptions.Beforeexplainingtheav......