Django部署在debian11服务器

Python加Django开发网页程序真的很方便,连我这个菜鸟看看教程之类的也能写出来程序。本地测试完了之后,想在服务器上跑跑看,结果发现,要发布到服务器端,可是比PHP程序要麻烦的多,从昨天下午就开始看相关的教程,后来在宝塔面板下部署成功了,但是我不想用宝塔面板,于是继续折腾的道路,经过一天的折腾,重装了好几次测试的服务器,终于算是部署成功了,虽然只是一个测试的项目,但是总算又迈出去了一步不是。项目采用nginx+uwsgi+django。服务器端采用的是debian11。

在服务器安装python3

由于debian11本身带有3.9.2版本的,所以,这里就不安装了。直接在data文件夹里建立一个虚拟目录。

python3 -m venv env
然后进入虚拟环境
source env/bin/activate
安装环境
可以用本地服务器的导出的requirements.txt,命令是:
pip freeze > requirements.txt #在本地虚拟环境使用
切换到服务器端,上传这个文件到data目录下

pip install -r requirements.txt #这样就可以在建立起和你的本地一样的环境
pip install uwsgi#虚拟环境里装了后,需要在真实环境再运行一次



上传本地的项目到data
在与manage.py同级目录下建立一个新文件。uwsgi.ini

#添加配置选择
[uwsgi]
#配置和nginx连接的socket连接
socket=127.0.0.1:8997
#配置项目路径,项目的所在目录
chdir=/data/wwwroot/mysite/
#配置wsgi接口模块文件路径,也就是wsgi.py这个文件所在的目录
wsgi-file=myblog/wsgi.py
#配置启动的进程数
processes=4
#配置每个进程的线程数
threads=2
#配置启动管理主进程
master=True
#配置存放主进程的进程号文件
pidfile=uwsgi.pid
#配置dump日志记录
daemonize=uwsgi.log
home=/data/env/

安装nginx

由于使用习惯了oneinstack,这里继续用这个面板安装,只需安装nginx即可,可去官网看安装方法,安装完成后,./vhost建立虚拟主机。虚拟主机的目录定位到你放置项目的位置。然后在usr/local/nginx/conf/vhost/下编辑你创建的这个主机的conf。加入以下的语句。

location / {
       include uwsgi_params;
       uwsgi_pass 127.0.0.1:8997;  #端口要和uwsgi里配置的一样
       uwsgi_param UWSGI_SCRIPT myblog.wsgi;  #wsgi.py所在的目录名+.wsgi
       uwsgi_param UWSGI_CHDIR /data/wwwroot/**/; #项目路径
    }
      location /static/ {
      alias /data/wwwroot/**/static/; #静态资源路径
      }

启动nginx和uwsgi

service nginx restart

进项目目录,虚拟环境下
uwsgi --ini uwsgi.ini

然后打开你的域名,应该就没有问题了

遇到的一些问题:

1、python manage.py runserver正常,但是浏览器用IP:8000打不开的问题,需要用以下命令

python manage.py runserver 0.0.0.0:8000

2、没有在uwsgi.ini中配置虚拟环境目录,导致浏览器打开时候报502的错误。只需要正确的配置目录,是会正常启动的。

Read more

十五年后:一个家庭的沉沦与命运的回音

十五年后:一个家庭的沉沦与命运的回音

十五年前,我写下《郁闷,这个世界还有这样无耻之人》这篇文章时,内心翻滚的不是小事的愤怒,而是对底线被践踏的失望。邻居从我家拉电线充电,还一副理所当然的样子,最后竟连我家的充电器都“借用”。甚至因为我给他写了纸条,还想打我。当时我说:“这个世界还有这样无耻之人”,只是没想到,十五年后再听到他们家的消息,竟是一出更荒诞的悲剧。 那家的男人已经去世。留下两个老婆争房产,最后还是他儿子获得了这套回迁房。他的儿子大学毕业了,却像一艘没有舵的船,一路磕磕绊绊: 交房一年来,看他儿子在业主群里抱怨,被电梯夹了不止一次,骑车进地下室摔过多回,车轮卡在道缝中,正常走路还能摔个仰八叉。毕业后没有工作,前不久小区换物业的时候,经介绍在小区做监控员,不服从管理员的管理(其实也是小事,人家让他把桌子上保持整洁,他就是不听,弄的乱七八糟的),和物业经理骂了一架,被辞退。邻里原想通融一二,以他母亲那无理取闹的性格,当然是又去物业把物业经理骂了一顿,结果也就那样了。 前几天偶尔和一个邻居聊起他家的情况,那个邻居说,他要打你那不是基本操作嘛,人早年曾在派出所拿刀扎他自己母亲,打你都是轻的😅。如今看来,

By 老刘
天上有雨,未落人间——说说《需卦》

天上有雨,未落人间——说说《需卦》

《易经》六十四卦中,《需卦》排在第五。 前面几卦,乾坤是天地之本,屯是起步之难,蒙是启蒙之初,到了第五卦——《需》——天地间万象已动,人也有所思、有所欲,但偏偏,这一步还不能迈出去。 需,有孚,光亨,贞吉,利涉大川。 等,不是停,是蓄。 卦象:天上有云,水未落 需卦的卦象是:上坎(☵,水)下乾(☰,天)。 水在天上,正是积雨之象。我们站在地上,仰望天空,望着那片厚厚的云,知道它迟早会落雨,但此时此刻,还未滴下哪怕一丝甘露。 这就叫“需”。 你知道目标在前,力量也已在身,但时机未到,不能躁进。 用现在的话说就是:“你已经准备好了,但世界还没准备好接住你。” 这不是消极,而是一种审时度势的智慧。

By 老刘
小米SU7又出事了,我们到底该怪谁?

小米SU7又出事了,我们到底该怪谁?

6月11日晚上,郑州街头,一辆小米SU7失控连撞十几辆车——电动车、小轿车都没躲过,车头几乎报废,现场一度混乱不堪。更早之前,安徽那起SU7高速起火致三人死亡的事故也还没从大家脑海中淡去。 姑且不说到底是不是智能驾驶的原因, 也有很多它的粉丝说比亚迪出事多少多少,归根到底还都是电车的问题,那么电车怎么老出事? 是车太猛?人太嫩?还是对“智能驾驶”理解太美好? 动力太猛,新手真心顶不住 先说车。SU7有多猛?顶配版零百加速2秒多,马力直接干到1000匹以上,这种性能放在燃油车里,那就是超跑级别。 但问题是,买它的大多是年轻人,很多是人生第一辆车,甚至有的刚拿驾照没多久。这种“猛兽”配“新司机”的组合,说实话,确实危险系数高。一脚电门下去,车先冲出去了,人还没反应过来。 郑州这次的女司机,就是刚提车不久。车一失控,根本刹不住。不是她不会开,而是这车给新手的容错空间实在太小了。 智能驾驶不是“放手驾驶” 再说智能驾驶。小米宣传的NOA、

By 老刘
站在新高考的起点:对两年后女儿的期许

站在新高考的起点:对两年后女儿的期许

2025年的高考今天落幕,这是“3+1+2”模式全面实施的第一年。从改革到首考,从认知到实践,这不仅是对学生能力的测量,更是一种教育方向的宣示。 作为家长,我对这次高考有三点深刻感受: 一、语文卷:不再“刷题”,更考“立志与思辨” 今年全国卷一作文聚焦“民族魂”,从老舍、艾青、穆旦的文字中引导学生理解爱国情怀的不同方式 。考题不仅强调情感共鸣,也要求结构逻辑清晰,表达真诚、语言自然流畅 。 这道作文开放而不空洞:任何有生活、有思考的学生,都能找到表达路径;但能够精准逻辑、有独立见解,并融入素材,便是真高分。 这使我明白,真正的语文能力,不在于套路,而在于“你是谁”——有温度、有思想、有立场。 二、历史题:文言与史料,强调跨学科理解 今年历史全国卷大量使用文言史料,并引导学生依据不同角度进行对比、评析与判断

By 老刘