- 1.uwsgi起不来,python3 manage.py runserver正常
- 网上查到很多都是sqlite版本低,但是我先升级了才开始的,我也就倔强上了,觉得不可能。然后查到很多人都是ini里面路径写错。直到看了日志。。。。。。
- 在centos里sqlite3版本〉3.9.0,import 后print也是大于,但是uwsgi的日志里面确实是3.7。
- 没有探究为什么,只是感觉在升级也没用了,换mysql不值当。
- 找到了替代品,改为使用pysqlite3就可以了。
# 安装
pip3 install pysqlite3
pip3 install pysqlite3-binary
#修改django的sqlite引擎
vi path2/python3.9/site-packages/django/db/backends/sqlite3/base.py
# 修改内容
# from sqlite3 import dbapi2 as Database # 注释掉这里
from pysqlite3 import dbapi2 as Database
- 2.no python application found,No module named 'django'
- 还是uwsgi遇到的,主要还是得看日志,看日志找解决方案快啊
-
pip show xxx
能显示xxx包的信息,包括位置
[uwsgi]
socket = 127.0.0.1:9000 #正式环境用
#http=0:80 #可以先以这个模式测试,能用浏览器访问到
chdir = /opt/www/fuhua #django project的位置
module = fuhua.wsgi
pythonpath = /opt/www/lib/python3.12/site-packages/ #pip包的位置,如果实在虚拟环境下,这里指向虚拟环境下的pip包位置
pythonhome = /opt/www/bin/python3 #python位置,虚拟环境时同上。有点儿windows加环境变量的感觉。
wsgi-file = /opt/www/fuhua/fuhua/wsgi.py
logto = /opt/www/fuhua/logs/error.log ####很重要了,uwsgi的错误日志
enable-threads = true
master = true
processes = 2
worker = 2
threads = 4
listen = 1000
timeout = 60*30
pidfile = uwsgi.pid
vacuum = true
max-requests=5000
daemonize=/opt/www/fuhua/logs/h5app.log
stats = /opt/www/fuhua/uwsgi.status
py-autoreload = 1 #代码更新uwsgi自动加载
-
chdir
写错会出现projectname.settings not found
的报错,也是啊,位置指错了肯定找不到额。
- 3.他写的python升级、openssl很详细规整,可以复制直接用那种
- 4.安装uwsgi出现关于SSL错误
- 现在回想,应该是openssl升级后,装更高版本python才出现的。
- 解决办法是:卸载openssl-devel
yum remove openssl-devel
-
error linking uWSGI
Building wheel for uwsgi (setup.py) ... error
ERROR: Command errored out with exit status 1:
开始阶段一直以这几个关键词找解决方案,所以都没找到,有人提出用coada装就可以,但是我没接受。
- 直到后面静下来看日志,从熟悉的内容下手,里面出现大量
undefined reference to xxxxxx_xxxx
,搜索了和ssl相关的试着卸载下成了。
- 4.所有的问题来自升级python,那为什么升级呢?
- 因为用到了django-ckeditor,但是网页上没加载出来,连静态资源里都没有。
-
pip show Django-ckeditor
后和能正常加载的开发机对比,requires里面没有django。查了下最新的几个版本号,发现支持是从python3.8开始的。升级后显示了,但是导出以上问题。