【发布时间】:2020-08-17 22:21:05
【问题描述】:
我几乎按照所有官方文档来让我的 Django 项目在我的 Ubuntu 18.04 v-server 上运行。它似乎工作......sudo service apache2 status -> 一切都很好。
[Sun May 03 16:07:20.489608 2020] [mpm_event:notice] [pid 11531:tid 139884218760128] AH00489:
Apache/2.4.29 (Ubuntu) OpenSSL/1.1.1 mod_wsgi/4.7.1 Python/3.8 configured -- resuming normal operations
[Sun May 03 16:07:20.489764 2020] [core:notice] [pid 11531:tid 139884218760128] AH00094:
Command line: '/usr/sbin/apache2'
我首先注意到,当我的模板在没有服务器重启的情况下无法更新时出现了问题,这不是 Django 的通常行为(即使在生产环境中也是如此)。每当我重新启动服务器时,我都会在 apache2/error.log 中收到此错误。虽然服务器一直在工作,但我想深入了解这一点。
Exception ignored in: <function Local.__del__ at 0x7fbd983f03a0>
Traceback (most recent call last):
File "/var/www/my_app/.my_app/lib/python3.8/site-packages/asgiref/local.py", line 95, in __del__
NameError: name 'AttributeError' is not defined
Exception ignored in: <function Local.__del__ at 0x7fbd983f03a0>
Traceback (most recent call last):
File "/var/www/my_app/.my_app/lib/python3.8/site-packages/asgiref/local.py", line 95, in __del__
NameError: name 'AttributeError' is not defined
[Sun May 03 16:07:19.418926 2020] [core:warn] [pid 11433:tid 140452536064960] AH00045: child process 11435 still did not exit, sending a SIGTERM
[Sun May 03 16:07:20.419208 2020] [mpm_event:notice] [pid 11433:tid 140452536064960] AH00491: caught SIGTERM, shutting down
[Sun May 03 16:07:20.489608 2020] [mpm_event:notice] [pid 11531:tid 139884218760128] AH00489: Apache/2.4.29 (Ubuntu) OpenSSL/1.1.1 mod_wsgi/4.7.1 Python/3.8 configured -- resuming normal operations
[Sun May 03 16:07:20.489764 2020] [core:notice] [pid 11531:tid 139884218760128] AH00094: Command line: '/usr/sbin/apache2'
- Ubuntu 18.04
- Python3.8.0 并通过 update-alternatives 链接到 python-command
- 在 venv 中运行的 Python
项目结构:
in /var/www/:
|-- my_app
| |-- my_app
| | |-- __init__.py
| | |-- asgi.py
| | |-- settings.py
| | |-- urls.py
| | `-- wsgi.py
| |-- db.sqlite3
| |-- manage.py
| |-- media
| |-- .my_app (python venv)
| |-- my_subapp
| | |-- __init__.py
| | |-- admin.py
| | |-- apps.py
| | |-- migrations
| | |-- models.py
| | |-- tests.py
| | |-- urls.py
| | `-- views.py
| `-- templates
| |-- base.html
| `-- index.html
有什么建议可能是错误的,为什么它说“找不到 AttributeError”?当它似乎是一个开箱即用的标准python类时......谢谢你的帮助:-)
【问题讨论】:
-
您似乎使用 wsgi,但错误似乎来自 asgi。会不会是什么?
-
是的,我也注意到了。但据我所知,没有禁用它。 asgiref.py 模块在我安装 django 后立即安装。我可以试着用核武器攻击它。哈哈
-
模板加载器是否设置正确? stackoverflow.com/questions/29007201/…
-
你运行的是哪个 Django 版本? docs.djangoproject.com/en/3.0/faq/install/…
-
Django 版本 3.0.5,没有使用模板加载器(已弃用),TEMPLATE_DIR 配置正确。
标签: python django apache ubuntu mod-wsgi