首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Django,gunicorn,nginx抛出504网关超时: AttributeError:模块‘静态’没有属性'Cling‘

Django,gunicorn,nginx抛出504网关超时: AttributeError:模块‘静态’没有属性'Cling‘
EN

Stack Overflow用户
提问于 2019-02-16 17:45:29
回答 1查看 435关注 0票数 0

昨天,我在网上部署了一个新版本的小网站,并立即收到504网关超时错误。

在对日志文件进行了一些挖掘之后,我发现了以下错误:

代码语言:javascript
复制
File "/home/dev/venuepark/ENV/lib/python3.6/site-packages/django/utils/autoreload.py", line 225, in wrapper
    fn(*args, **kwargs)
  File "/home/dev/venuepark/ENV/lib/python3.6/site-packages/django/core/management/commands/runserver.py", line 137, in inner_run
    handler = self.get_handler(*args, **options)
  File "/home/dev/venuepark/ENV/lib/python3.6/site-packages/django/contrib/staticfiles/management/commands/runserver.py", line 27, in get_handler
    handler = super().get_handler(*args, **options)
  File "/home/dev/venuepark/ENV/lib/python3.6/site-packages/django/core/management/commands/runserver.py", line 64, in get_handler
    return get_internal_wsgi_application()
  File "/home/dev/venuepark/ENV/lib/python3.6/site-packages/django/core/servers/basehttp.py", line 44, in get_internal_wsgi_application
    return import_string(app_path)
  File "/home/dev/venuepark/ENV/lib/python3.6/site-packages/django/utils/module_loading.py", line 17, in import_string
    module = import_module(module_path)
  File "/usr/lib/python3.6/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 994, in _gcd_import
  File "<frozen importlib._bootstrap>", line 971, in _find_and_load
  File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/home/dev/venuepark/venuepark/venuepark/wsgi.py", line 17, in <module>
    application = Cling(MediaCling(get_wsgi_application()))
  File "/home/dev/venuepark/ENV/lib/python3.6/site-packages/dj_static.py", line 97, in __init__
    super(MediaCling, self).__init__(application, base_dir=base_dir)
  File "/home/dev/venuepark/ENV/lib/python3.6/site-packages/dj_static.py", line 48, in __init__
    self.cling = static.Cling(base_dir)
AttributeError: module 'static' has no attribute 'Cling'

我的wsgi.py:

代码语言:javascript
复制
import os

from django.core.wsgi import get_wsgi_application
from dj_static import Cling, MediaCling

os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'venuepark.config.settings.production_settings')

application = Cling(MediaCling(get_wsgi_application()))

但是dj-静态是正确安装的。

是什么导致了这个问题?提前感谢

编辑:

当我在本地运行生产设置时,一切正常。但是,当我试图在生产服务器上运行它们时(不是使用gunicorn,而是django自己的运行服务器),我得到的错误与在我的gunicorn错误日志中接收到的错误相同(参见上面的错误)。

我也运行本地设置,它们也会引发上面的错误。

编辑2:我已经创建了一个新的环境并重新安装了需求文件,而且错误仍然存在。AttributeError: module 'static' has no attribute 'Cling'

EN

回答 1

Stack Overflow用户

发布于 2019-02-16 18:58:57

再次检查您的环境创建:

代码语言:javascript
复制
mkdir /tmp/djstatic && cd /tmp/djstatic
pipenv install django dj_static
pipenv run python -c "from dj_static import Cling"

一定会成功的。

我认为您使用pipenv来创建项目环境。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54725932

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档