mod_wsgi:处理WSGI脚本时发生异常(Django部署)

阿尔贝托

我正在尝试使用以下Apache配置部署django项目:

Apache VirtualHost配置

<Virtualhost *:80>
    DocumentRoot /var/www/project/backend
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

    WSGIDaemonProcess backend python-home=/var/www/project/myenv python-path=/var/www/gestor_documental/backend

    WSGIProcessGroup backend
    WSGIScriptAlias / /var/www/project/backend/backend/wsgi.py process-group=backend
    Alias /static/ /var/www/project/backend/static/

    <Directory /var/www/project/backend>
            Require all granted
    </Directory>
</Virtualhost>

wsgi.load文件

LoadModule wsgi_module "/var/www/project/myenv/lib/python3.5/site-packages/mod_wsgi/server/mod_wsgi-py35.cpython-35m-x86_64-linux-gnu.so"
WSGIPythonHome "/var/www/project/myenv"

wsgi.py是django默认提供的一个

wsgi.py

import os
from django.core.wsgi import get_wsgi_application

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "backend.settings")

application = get_wsgi_application()

这是项目树:

project
|- backend
|  |- api (django app)
|  |- backend
|     |- ...
|     |- settings.py
|     |- wsgi.py
|-- myenv (virtualenv)

这是我尝试加载网络时不断收到的错误日志:

mod_wsgi (pid=38953): Failed to exec Python script file '/var/www/project/backend/backend/wsgi.py'.
mod_wsgi (pid=38953): Exception occurred processing WSGI script '/var/www/project/backend/backend/wsgi.py'.
Traceback (most recent call last):
 File "/var/www/project/backend/backend/wsgi.py", line 16, in <module>
  application = get_wsgi_application()
 File "/var/www/project/myenv/lib/python3.5/site-packages/django/core/wsgi.py", line 13, in get_wsgi_application
  django.setup(set_prefix=False)
 File "/var/www/project/myenv/lib/python3.5/site-packages/django/__init__.py", line 22, in setup
  configure_logging(settings.LOGGING_CONFIG, settings.LOGGING)
 File "/var/www/project/myenv/lib/python3.5/site-packages/django/conf/__init__.py", line 53, in __getattr__
  self._setup(name)
 File "/var/www/project/myenv/lib/python3.5/site-packages/django/conf/__init__.py", line 41, in _setup
  self._wrapped = Settings(settings_module)
 File "/var/www/project/myenv/lib/python3.5/site-packages/django/conf/__init__.py", line 97, in __init__
  mod = importlib.import_module(self.SETTINGS_MODULE)
 File "/var/www/project/myenv/lib/python3.5/importlib/__init__.py", line 126, in import_module
  return _bootstrap._gcd_import(name[level:], package, level)
 File "<frozen importlib._bootstrap>", line 986, in _gcd_import
 File "<frozen importlib._bootstrap>", line 969, in _find_and_load
 File "<frozen importlib._bootstrap>", line 944, in _find_and_load_unlocked
 File "<frozen importlib._bootstrap>", line 222, in _call_with_frames_removed
 File "<frozen importlib._bootstrap>", line 986, in _gcd_import
 File "<frozen importlib._bootstrap>", line 969, in _find_and_load
 File "<frozen importlib._bootstrap>", line 956, in _find_and_load_unlocked
ImportError: No module named 'backend'

我已经按照每个教程进行了尝试,并尝试了大量的配置,但是仍然遇到相同的错误。

在virtualenv和Apache 2.4.18中使用python 3.5.2

我已经通过pip3安装了mod_wsgi。

有人可以帮我这个忙,并告诉我我做错了什么吗?

谢谢。

阿尔贝托

我解决了更改wsgi.py文件并添加以下几行的问题:

import sys

sys.path.append('/var/www/project/backend')

我不知道这是否是正确的答案,但实际上可以解决此问题。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Django(mod_wsgi)处理WSGI脚本时发生异常

mod_wsgi 无法解析 WSGI 脚本文件 | 处理 WSGI 脚本时发生异常 | 无法导入“站点”模块

AWS Lightsail'处理WSGI脚本时发生异常'

无法在 Apache (mod_wsgi) 上部署官方 Django 教程

使用WAMP和mod_wsgi部署Django Restfule服务

使用 mod_wsgi 部署 django(python) 项目

使用 mod_wsgi 在 Apache 上部署 Django

在Django mod_wsgi脚本中访问请求标头

Django,Apache和mod_wsgi

Django 和 mod_wsgi python 版本?

Apache、Django 和 mod_wsgi

使用mod_wsgi在Apache2上部署Django-Django项目的正确位置?

使用mod_wsgi / Apache2部署Flask App时出现Numpy ImportError

使用mod_wsgi在Ubuntu 16.04 apache2上部署Django应用

寻求有关使用Apache和mod_wsgi的Django部署设置的建议

使用mod_wsgi在Centos 6.5上部署基于python3.4的Django项目:可行吗?

ubuntu上的Django + Pipenv + Apache + mod_wsgi部署未加载模块

在apache2.4上安装mod_wsgi时发生错误

当我触摸wsgi脚本时,不会重新加载带有mod_wsgi的烧瓶应用程序

Django和mod_wsgi出现问题:“脚本在返回标头之前超时:wsgi.py”

部署烧瓶和apache2 mod_wsgi的问题

无法在Flask设置中解决mod_wsgi异常

Django的mod_wsgi错误:从守护进程读取响应标头时超时

通过Apache mod_wsgi django调用keras模型时,如何释放占用的GPU内存?

安装mod_wsgi + django时出现httpd.config错误

卡在mod_wsgi上

Mod_Wsgi 缺少符号

Django用mod_wsgi如何设置PYTHONHASHSEED env变量?

FreeBSD:如何使用mod_wsgi安装Django?