python - Apache/mod_wsgi ModuleNotFoundError
问题描述
我正在尝试在Ubuntu VPS
with上托管一个 Django 网站Apache/mod_wsgi
。
如果我在嵌入式模式下运行它,网站会加载。
WSGIScriptAlias / /home/admin/web/mywebsite/myproject/wsgi.py
WSGIPythonHome /home/admin/web/mywebsite/venv
WSGIPythonPath /home/admin/web/mywebsite
<Directory /home/admin/web/mywebsite/myproject>
<Files wsgi.py>
Order deny,allow
Allow from all
</Files>
</Directory>
但是,如果我尝试在 中运行它daemon mode
,我会收到错误消息:ModuleNotFoundError: No module named 'myproject'
.
WSGIDaemonProcess myproject python-home=/home/admin/web/mywebsite/venv python-path=/home/admin/web/mywebsite socket-user=#1001
WSGIProcessGroup myproject
WSGIScriptAlias / /home/admin/web/mywebsite/myproject/wsgi.py
我的 WSGI 文件:
import os
from django.core.wsgi import get_wsgi_application
os.environ['DJANGO_SETTINGS_MODULE'] = 'myproject.settings'
application = get_wsgi_application()
如果我运行 manage.py 命令,它会在嵌入式和守护程序模式下显示相同的 ModuleNotFoundError 错误。什么可能是错的?
[Mon Feb 24 09:00:37.333725 2020] [wsgi:error] [pid 7830] [remote 5.187.171.36:18335] mod_wsgi (pid=7830): Target WSGI script '/home/admin/web/mywebsite/myproject/wsgi.py' cannot be loaded as Python module.
[Mon Feb 24 09:00:37.333768 2020] [wsgi:error] [pid 7830] [remote 5.187.171.36:18335] mod_wsgi (pid=7830): Exception occurred processing WSGI script '/home/admin/web/mywebsite/myproject/wsgi.py'.
[Mon Feb 24 09:00:37.334090 2020] [wsgi:error] [pid 7830] [remote 5.187.171.36:18335] Traceback (most recent call last):
[Mon Feb 24 09:00:37.334124 2020] [wsgi:error] [pid 7830] [remote 5.187.171.36:18335] File "/home/admin/web/mywebsite/myproject/wsgi.py", line 16, in <module>
[Mon Feb 24 09:00:37.334127 2020] [wsgi:error] [pid 7830] [remote 5.187.171.36:18335] application = get_wsgi_application()
[Mon Feb 24 09:00:37.334131 2020] [wsgi:error] [pid 7830] [remote 5.187.171.36:18335] File "/home/admin/web/mywebsite/venv/lib/python3.6/site-packages/django/core/wsgi.py", line 12, in get_wsgi_application
[Mon Feb 24 09:00:37.334133 2020] [wsgi:error] [pid 7830] [remote 5.187.171.36:18335] django.setup(set_prefix=False)
[Mon Feb 24 09:00:37.334136 2020] [wsgi:error] [pid 7830] [remote 5.187.171.36:18335] File "/home/admin/web/mywebsite/venv/lib/python3.6/site-packages/django/__init__.py", line 19, in setup
[Mon Feb 24 09:00:37.334139 2020] [wsgi:error] [pid 7830] [remote 5.187.171.36:18335] configure_logging(settings.LOGGING_CONFIG, settings.LOGGING)
[Mon Feb 24 09:00:37.334142 2020] [wsgi:error] [pid 7830] [remote 5.187.171.36:18335] File "/home/admin/web/mywebsite/venv/lib/python3.6/site-packages/django/conf/__init__.py", line 76, in __getattr__
[Mon Feb 24 09:00:37.334144 2020] [wsgi:error] [pid 7830] [remote 5.187.171.36:18335] self._setup(name)
[Mon Feb 24 09:00:37.334147 2020] [wsgi:error] [pid 7830] [remote 5.187.171.36:18335] File "/home/admin/web/mywebsite/venv/lib/python3.6/site-packages/django/conf/__init__.py", line 63, in _setup
[Mon Feb 24 09:00:37.334149 2020] [wsgi:error] [pid 7830] [remote 5.187.171.36:18335] self._wrapped = Settings(settings_module)
[Mon Feb 24 09:00:37.334152 2020] [wsgi:error] [pid 7830] [remote 5.187.171.36:18335] File "/home/admin/web/mywebsite/venv/lib/python3.6/site-packages/django/conf/__init__.py", line 142, in __init__
[Mon Feb 24 09:00:37.334154 2020] [wsgi:error] [pid 7830] [remote 5.187.171.36:18335] mod = importlib.import_module(self.SETTINGS_MODULE)
[Mon Feb 24 09:00:37.334157 2020] [wsgi:error] [pid 7830] [remote 5.187.171.36:18335] File "/usr/lib/python3.6/importlib/__init__.py", line 126, in import_module
[Mon Feb 24 09:00:37.334159 2020] [wsgi:error] [pid 7830] [remote 5.187.171.36:18335] return _bootstrap._gcd_import(name[level:], package, level)
[Mon Feb 24 09:00:37.334162 2020] [wsgi:error] [pid 7830] [remote 5.187.171.36:18335] File "<frozen importlib._bootstrap>", line 994, in _gcd_import
[Mon Feb 24 09:00:37.334165 2020] [wsgi:error] [pid 7830] [remote 5.187.171.36:18335] File "<frozen importlib._bootstrap>", line 971, in _find_and_load
[Mon Feb 24 09:00:37.334169 2020] [wsgi:error] [pid 7830] [remote 5.187.171.36:18335] File "<frozen importlib._bootstrap>", line 941, in _find_and_load_unlocked
[Mon Feb 24 09:00:37.334172 2020] [wsgi:error] [pid 7830] [remote 5.187.171.36:18335] File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
[Mon Feb 24 09:00:37.334175 2020] [wsgi:error] [pid 7830] [remote 5.187.171.36:18335] File "<frozen importlib._bootstrap>", line 994, in _gcd_import
[Mon Feb 24 09:00:37.334178 2020] [wsgi:error] [pid 7830] [remote 5.187.171.36:18335] File "<frozen importlib._bootstrap>", line 971, in _find_and_load
[Mon Feb 24 09:00:37.334188 2020] [wsgi:error] [pid 7830] [remote 5.187.171.36:18335] File "<frozen importlib._bootstrap>", line 953, in _find_and_load_unlocked
[Mon Feb 24 09:00:37.334197 2020] [wsgi:error] [pid 7830] [remote 5.187.171.36:18335] ModuleNotFoundError: No module named 'myproject'
解决方案
推荐阅读
- python - 查找两个范围之间的相交集
- assembly - 我在 x86 中收到我不理解的分段错误
- type-conversion - 转换为字符串 Powershell 问题
- java - 由于类路径问题导致的 Intellij 编译错误
- python-3.x - Python:如何从字典列表中构建字典
- android - Android UPI 支付意图总是失败
- ios - Flutter iOS RevenueCat 未捕获异常'NSInternalInconsistencyException'
- amazon-web-services - Amazon S3 和 Cloudfront 存在 zip 文件问题
- javascript - 只要数组中有一个具有特定属性值的对象,while 语句就会执行某些操作
- flutter - dart如何在函数外指定类构造函数?