You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django 3.2 应用中出现 'SimpleLazyObject' 无 'match' 属性的 AttributeError 问题求助

Django 3.2 应用中出现 'SimpleLazyObject' 无 'match' 属性的 AttributeError 问题求助

大家好,我最近碰到一个让人头疼的问题,想请教下社区的各位大佬:

我维护的是一个基于 Django 3.2 的应用,搭配 gunicorn 23 和 Python 3.9 运行,同时集成了 Sentry SDK 1.9.7。整个应用部署在Docker容器中,所有依赖都安装在virtualenv虚拟环境里。

现在应用频繁抛出AttributeError: 'SimpleLazyObject' object has no attribute 'match'的错误,完整的错误栈如下:

Traceback (most recent call last):
   File "/app/web/.venv/lib/python3.9/site-packages/django/core/handlers/exception.py", line 47, in inner
     response = get_response(request)
   File "/app/web/.venv/lib/python3.9/site-packages/sentry_sdk/integrations/django/middleware.py", line 175, in __call__
     return f(*args, **kwargs)
   File "/app/web/.venv/lib/python3.9/site-packages/django/utils/deprecation.py", line 116, in __call__
     response = self.process_request(request)
   File "/app/web/.venv/lib/python3.9/site-packages/django/middleware/locale.py", line 21, in process_request
     language = translation.get_language_from_request(request, check_path=i18n_patterns_used)
   File "/app/web/.venv/lib/python3.9/site-packages/django/utils/translation/__init__.py", line 291, in get_language_from_request
     return _trans.get_language_from_request(request, check_path)
   File "/app/web/.venv/lib/python3.9/site-packages/django/utils/translation/trans_real.py", line 531, in get_language_from_request
     lang_code = get_language_from_path(request.path_info)
   File "/app/web/.venv/lib/python3.9/site-packages/django/utils/translation/trans_real.py", line 510, in get_language_from_path
     regex_match = language_code_prefix_re.match(path)
 AttributeError: 'SimpleLazyObject' object has no attribute 'match'
 During handling of the above exception, another exception occurred:
 Traceback (most recent call last):
   File "/app/web/.venv/lib/python3.9/site-packages/django/core/handlers/exception.py", line 47, in inner
     response = get_response(request)
   File "/app/web/.venv/lib/python3.9/site-packages/sentry_sdk/integrations/django/middleware.py", line 175, in __call__
     return f(*args, **kwargs)
   File "/app/web/.venv/lib/python3.9/site-packages/django/utils/deprecation.py", line 117, in __call__
     response = response or self.get_response(request)
   File "/app/web/.venv/lib/python3.9/site-packages/django/core/handlers/exception.py", line 49, in inner
     response = response_for_exception(request, exc)
   File "/app/web/.venv/lib/python3.9/site-packages/django/core/handlers/exception.py", line 114, in response_for_exception
     response = handle_uncaught_exception(request, get_resolver(get_urlconf()), sys.exc_info())
   File "/app/web/.venv/lib/python3.9/site-packages/django/core/handlers/exception.py", line 153, in handle_uncaught_exception
     return callback(request)
   File "/app/web/.venv/lib/python3.9/site-packages/django/utils/decorators.py", line 126, in _wrapped_view
     result = middleware.process_view(request, view_func, args, kwargs)
   File "/app/web/.venv/lib/python3.9/site-packages/django/middleware/csrf.py", line 269, in process_view
     good_referer = request.get_host()
   File "/app/web/.venv/lib/python3.9/site-packages/django/http/request.py", line 142, in get_host
     domain, port = split_domain_port(host)
   File "/app/web/.venv/lib/python3.9/site-packages/django/http/request.py", line 665, in split_domain_port
     if not host_validation_re.match(host):
 AttributeError: 'SimpleLazyObject' object has no attribute 'match'
 During handling of the above exception, another exception occurred:
 Traceback (most recent call last):
   File "/app/web/.venv/lib/python3.9/site-packages/django/core/handlers/exception.py", line 47, in inner
     response = get_response(request)
   File "/app/web/.venv/lib/python3.9/site-packages/sentry_sdk/integrations/django/middleware.py", line 175, in __call__
     return f(*args, **kwargs)
   File "/app/web/.venv/lib/python3.9/site-packages/django/utils/deprecation.py", line 117, in __call__
     response = response or self.get_response(request)
   File "/app/web/.venv/lib/python3.9/site-packages/django/core/handlers/exception.py", line 49, in inner
     response = response_for_exception(request, exc)
   File "/app/web/.venv/lib/python3.9/site-packages/django/core/handlers/exception.py", line 114, in response_for_exception
     response = handle_uncaught_exception(request, get_resolver(get_urlconf()), sys.exc_info())
   File "/app/web/.venv/lib/python3.9/site-packages/django/core/handlers/exception.py", line 153, in handle_uncaught_exception
     return callback(request)
   File "/app/web/.venv/lib/python3.9/site-packages/django/utils/decorators.py", line 126, in _wrapped_view
     result = middleware.process_view(request, view_func, args, kwargs)
   File "/app/web/.venv/lib/python3.9/site-packages/django/middleware/csrf.py", line 269, in process_view
     good_referer = request.get_host()
   File "/app/web/.venv/lib/python3.9/site-packages/django/http/request.py", line 142, in get_host
     domain, port = split_domain_port(host)
   File "/app/web/.venv/lib/python3.9/site-packages/django/http/request.py", line 665, in split_domain_port
     if not host_validation_re.match(host):
 AttributeError: 'SimpleLazyObject' object has no attribute 'match'
 During handling of the above exception, another exception occurred:
 Traceback (most recent call last):
   File "/app/web/.venv/lib/python3.9/site-packages/django/core/handlers/exception.py", line 47, in inner
     response = get_response(request)
   File "/app/web/.venv/lib/python3.9/site-packages/sentry_sdk/integrations/django/middleware.py", line 175, in __call__
     return f(*args, **kwargs)
   File "/app/web/.venv/lib/python3.9/site-packages/django/utils/deprecation.py", line 117, in __call__
     response = response or self.get_response(request)
   File "/app/web/.venv/lib/python3.9/site-packages/django/core/handlers/exception.py", line 49, in inner
     response = response_for_exception(request, exc)
   File "/app/web/.venv/lib/python3.9/site-packages/django/core/handlers/exception.py", line 114, in response_for_exception
     response = handle_uncaught_exception(request, get_resolver(get_urlconf()), sys.exc_info())
   File "/app/web/.venv/lib/python3.9/site-packages/django/core/handlers/exception.py", line 153, in handle_uncaught_exception
     return callback(request)
   File "/app/web/.venv/lib/python3.9/site-packages/django/utils/decorators.py", line 126, in _wrapped_view
     result = middleware.process_view(request, view_func, args, kwargs)
   File "/app/web/.venv/lib/python3.9/site-packages/django/middleware/csrf.py", line 269, in process_view
     good_referer = request.get_host()
   File "/app/web/.venv/lib/python3.9/site-packages/django/http/request.py", line 142, in get_host
     domain, port = split_domain_port(host)
   File "/app/web/.venv/lib/python3.9/site-packages/django/http/request.py", line 665, in split_domain_port
     if not host_validation_re.match(host):
 AttributeError: 'SimpleLazyObject' object has no attribute 'match'
 During handling of the above exception, another exception occurred:
 Traceback (most recent call last):
   File "/app/web/.venv/lib/python3.9/site-packages/gunicorn/workers/sync.py", line 134, in handle
     self.handle_request(listener, req, client, addr)
   File "/app/web/.venv/lib/python3.9/site-packages/gunicorn/workers/sync.py", line 177, in handle_request
     respiter = self.wsgi(environ, resp.start_response)
   File "/app/web/.venv/lib/python3.9/site-packages/sentry_sdk/integrations/django/__init__.py", line 128, in sentry_patched_wsgi_handler
     return SentryWsgiMiddleware(bound_old_app, use_x_forwarded_for)(
   File "/app/web/.venv/lib/python3.9/site-packages/sentry_sdk/integrations/wsgi.py", line 143, in __call__
     reraise(*_capture_exception(hub))
   File "/app/web/.venv/lib/python3.9/site-packages/sentry_sdk/_compat.py", line 54, in reraise
     raise value
   File "/app/web/.venv/lib/python3.9/site-packages/sentry_sdk/integrations/wsgi.py", line 136, in __call__
     rv = self.app(
   File "/app/web/.venv/lib/python3.9/site-packages/django/core/handlers/wsgi.py", line 133, in __call__
     response = self.get_response(request)
   File "/app/web/.venv/lib/python3.9/site-packages/sentry_sdk/integrations/django/__init__.py", line 407, in sentry_patched_get_response
     rv = old_get_response(self, request)
   File "/app/web/.venv/lib/python3.9/site-packages/django/core/handlers/base.py", line 130, in get_response
     response = self._middleware_chain(request)
   File "/app/web/.venv/lib/python3.9/site-packages/django/core/handlers/exception.py", line 49, in inner
     response = response_for_exception(request, exc)
   File "/app/web/.venv/lib/python3.9/site-packages/django/core/handlers/exception.py", line 114, in response_for_exception
     response = handle_uncaught_exception(request, get_resolver(get_urlconf()), sys.exc_info())
   File "/app/web/.venv/lib/python3.9/site-packages/django/core/handlers/exception.py", line 153, in handle_uncaught_exception
     return callback(request)
   File "/app/web/.venv/lib/python3.9/site-packages/django/utils/decorators.py", line 126, in _wrapped_view
     result = middleware.process_view(request, view_func, args, kwargs)
   File "/app/web/.venv/lib/python3.9/site-packages/django/middleware/csrf.py", line 269, in process_view
     good_referer = request.get_host()
   File "/app/web/.venv/lib/python3.9/site-packages/django/http/request.py", line 142, in get_host
     domain, port = split_domain_port(host)
   File "/app/web/.venv/lib/python3.9/site-packages/django/http/request.py", line 665, in split_domain_port
     if not host_validation_re.match(host):
 AttributeError: 'SimpleLazyObject' object has no attribute 'match'

我排查了很久,还是没找到问题根源,有没有遇到过类似情况的朋友能给点思路或者解决方案?

备注:内容来源于stack exchange,提问作者stavitel_borek

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.14 15:08:02