django - uWSGI 找不到 python3 插件 - open("./python3_plugin.so"): No such file or directory
问题描述
我已经尝试了 stackoverflow 中的所有解决方案,但仍然找不到适合我的解决方案。
正如您在 pluginsdir 中看到的那样,python3 插件可用,但 uwsgi 说它不可用。
[uwsgi].ini 文件
[uwsgi]
vhost = true
plugins-dir = /usr/lib/uwsgi/plugins
plugins = python3
socket = /var/run/domain.org.sock
master = true
enable-threads = true
processes = 2
wsgi-file = /var/www/domain.org/config/wsgi.py
virtualenv = /var/www/domain.org/env
chdir = /var/www/domain.org
ls -la /usr/lib/uwsgi/plugins
drwxr-xr-x 2 root root 4096 Dec 18 21:44 .
drwxr-xr-x 3 root root 4096 Dec 18 21:44 ..
...
-rw-r--r-- 1 root root 199896 Apr 11 2020 python38_plugin.so
lrwxrwxrwx 1 root root 38 Dec 18 21:44 python3_plugin.so -> /etc/alternatives/uwsgi-plugin-python3
uwsgi --ini /etc/uwsgi/apps-available/domain.org.ini
[uWSGI] getting INI configuration from /etc/uwsgi/apps-available/domain.org.ini
open("./python3_plugin.so"): No such file or directory [core/utils.c line 3732]
!!! UNABLE to load uWSGI plugin: ./python3_plugin.so: cannot open shared object file: No such file or directory !!!
*** Starting uWSGI 2.0.19.1 (64bit) on [Fri Dec 18 21:52:29 2020] ***
compiled with version: 9.3.0 on 18 December 2020 13:15:35
解决方案
安装后,尝试导出并启用python插件,如;
export PYTHON=python3.8
uwsgi --build-plugin "/usr/src/uwsgi/plugins/python python38"
比将插件文件移动到相关目录;
mv python38_plugin.so /usr/lib/uwsgi/plugins/python38_plugin.so
chmod 644 /usr/lib/uwsgi/plugins/python38_plugin.so
您可以使用以下命令测试该插件是否启用;
uwsgi --plugin python38 -s :0
你应该看到类似的东西;
Python version: 3.8xxx
Ps:如果您遇到诸如“权限被拒绝”之类的错误,请不要忘记在所有命令中添加 sudo。
推荐阅读
- python - 将函数应用于 3D、2 通道 Keras 张量的每个元素
- ibm-watson - 我可以将实体或意图作为 json 文件而不是 csv 导入我的 watson 吗?
- oracle - Oracle SQL Developer - 数据库复制/数据库差异灰显
- php - 在包含的字符串中搜索 URL
- google-bigquery - 如何在 bigquery 中使用 String_agg
- google-cloud-platform - Dataproc 上的抢占式工作虚拟机上的 GPU 支持
- authentication - TYPO3 v10.2:自定义身份验证服务中的前端用户会话保存 ($GLOBALS['TSFE']->fe_user)
- delphi - Word Automation 的 SaveAs 不会将文件保存在一台机器的特定文件夹中
- fonts - 如何使 Arch Linux 上的 Snap Store 字体显示为文本而不是空矩形?
- java - latlng 不能为空 - 自动完成中需要一个位置