【发布时间】:2016-12-16 15:26:34
【问题描述】:
[Mon Dec 12 10:45:23 2016] [error] [client 178.161.91.227] (70007)The timeout specified has expired: mod_wsgi (pid=941): Unable to get bucket brigade for request.
[Mon Dec 12 10:45:23 2016] [error] Internal Server Error: /profile/
[Mon Dec 12 10:45:23 2016] [error] Traceback (most recent call last):
[Mon Dec 12 10:45:23 2016] [error] File "/sites/virtualenvs/capstone/lib/python2.7/site-packages/django/core/handlers/base.py", line 149, in get_response
[Mon Dec 12 10:45:23 2016] [error] response = self.process_exception_by_middleware(e, request)
[Mon Dec 12 10:45:23 2016] [error] File "/sites/virtualenvs/capstone/lib/python2.7/site-packages/django/core/handlers/base.py", line 147, in get_response
[Mon Dec 12 10:45:23 2016] [error] response = wrapped_callback(request, *callback_args, **callback_kwargs)
[Mon Dec 12 10:45:23 2016] [error] File "/sites/virtualenvs/capstone/lib/python2.7/site-packages/django/views/decorators/csrf.py", line 58, in wrapped_view
[Mon Dec 12 10:45:23 2016] [error] return view_func(*args, **kwargs)
[Mon Dec 12 10:45:23 2016] [error] File "/sites/virtualenvs/capstone/lib/python2.7/site-packages/django/views/generic/base.py", line 68, in view
[Mon Dec 12 10:45:23 2016] [error] return self.dispatch(request, *args, **kwargs)
[Mon Dec 12 10:45:23 2016] [error] File "/sites/virtualenvs/capstone/lib/python2.7/site-packages/rest_framework/views.py", line 466, in dispatch
[Mon Dec 12 10:45:23 2016] [error] response = self.handle_exception(exc)
[Mon Dec 12 10:45:23 2016] [error] File "/sites/virtualenvs/capstone/lib/python2.7/site-packages/rest_framework/views.py", line 463, in dispatch
[Mon Dec 12 10:45:23 2016] [error] response = handler(request, *args, **kwargs)
[Mon Dec 12 10:45:23 2016] [error] File "/sites/projects/capstone/app/views.py", line 258, in get
[Mon Dec 12 10:45:23 2016] [error] pk = request.data.get('pk', None)
[Mon Dec 12 10:45:23 2016] [error] File "/sites/virtualenvs/capstone/lib/python2.7/site-packages/rest_framework/request.py", line 353, in __getattribute__
[Mon Dec 12 10:45:23 2016] [error] return super(Request, self).__getattribute__(attr)
[Mon Dec 12 10:45:23 2016] [error] File "/sites/virtualenvs/capstone/lib/python2.7/site-packages/rest_framework/request.py", line 183, in data
[Mon Dec 12 10:45:23 2016] [error] self._load_data_and_files()
[Mon Dec 12 10:45:23 2016] [error] File "/sites/virtualenvs/capstone/lib/python2.7/site-packages/rest_framework/request.py", line 243, in _load_data_and_files
[Mon Dec 12 10:45:23 2016] [error] self._data, self._files = self._parse()
[Mon Dec 12 10:45:23 2016] [error] File "/sites/virtualenvs/capstone/lib/python2.7/site-packages/rest_framework/request.py", line 289, in _parse
[Mon Dec 12 10:45:23 2016] [error] parsed = parser.parse(stream, media_type, self.parser_context)
[Mon Dec 12 10:45:23 2016] [error] File "/sites/virtualenvs/capstone/lib/python2.7/site-packages/rest_framework/parsers.py", line 66, in parse
[Mon Dec 12 10:45:23 2016] [error] data = stream.read().decode(encoding)
[Mon Dec 12 10:45:23 2016] [error] File "/sites/virtualenvs/capstone/lib/python2.7/site-packages/django/http/request.py", line 322, in read
[Mon Dec 12 10:45:23 2016] [error] six.reraise(UnreadablePostError, UnreadablePostError(*e.args), sys.exc_info()[2])
[Mon Dec 12 10:45:23 2016] [error] File "/sites/virtualenvs/capstone/lib/python2.7/site-packages/django/http/request.py", line 320, in read
[Mon Dec 12 10:45:23 2016] [error] return self._stream.read(*args, **kwargs)
[Mon Dec 12 10:45:23 2016] [error] File "/sites/virtualenvs/capstone/lib/python2.7/site-packages/django/core/handlers/wsgi.py", line 47, in read
[Mon Dec 12 10:45:23 2016] [error] result = self.buffer + self._read_limited()
[Mon Dec 12 10:45:23 2016] [error] File "/sites/virtualenvs/capstone/lib/python2.7/site-packages/django/core/handlers/wsgi.py", line 41, in _read_limited
[Mon Dec 12 10:45:23 2016] [error] result = self.stream.read(size)
[Mon Dec 12 10:45:23 2016] [error] UnreadablePostError: request data read error
[Mon Dec 12 10:45:23 2016] [error] [client 178.161.91.227] mod_wsgi (pid=937): Exception occurred processing WSGI script '/sites/projects/capstone/project/wsgi.py'.
[Mon Dec 12 10:45:23 2016] [error] [client 178.161.91.227] IOError: failed to write data
[Mon Dec 12 14:18:18 2016] [error] Not Found: /
[Mon Dec 12 20:15:04 2016] [error] Not Found: /etc/lib/pChart2/examples/index.php
[Tue Dec 13 07:01:55 2016] [error] Not Found: /
[Tue Dec 13 07:01:55 2016] [error] Not Found: /
[Tue Dec 13 07:14:10 2016] [error] Not Found: /
[Tue Dec 13 07:14:11 2016] [error] Not Found: /
[Tue Dec 13 07:39:17 2016] [error] Not Found: /
这是我在服务器中的 error_log 的最新部分。这个错误随机弹出(我看不到模式)。我研究了很多,但找不到解决方案,尝试了无数在谷歌上发现的东西,但没有任何效果。有点工作然后停止工作的一件事是更改apache配置文件中“Timeout”的值并增加它,现在是600。它当时解决了问题,然后问题又回来了。我第一次遇到它时,我更改了 Django 代码中的 URI 端点和视图函数的名称,但保留了相同的旧代码,问题就消失了。但后来又回来了。
我正在使用 Django==1.9.6 和 MySQL-python==1.2.5 和 Apache/2.2.22(Ubuntu 12.04 LTS x86_64 Minimal)
以下是访问日志中导致此错误弹出的条目。
178.161.91.227 - - [12/Dec/2016:10:45:13 +0000] "GET /profile/ HTTP/1.1" 500 637 "-" "Capstone-Project/1.0 (alebrahim.Capstone-Project; build:1; iOS 10.1.0) Alamofire/4.1.0"
我不知道还有什么相关的,如果需要任何信息,我会在这里添加。
edit:我们注意到这个问题只有在 Alamofire 请求将请求对象编码为 JSON 时才会出现。如果没有编码,这个问题就会消失。
【问题讨论】:
-
处理
/profile/的请求通常需要多长时间?您知道错误发生时是哪个用户 178.161.91.227 登录的吗?如果您以该用户身份登录并尝试访问/profile/,需要多长时间才能响应,结果如何? -
它不会花费特别长的时间,它与其他请求花费的时间相同。这是移动应用程序的一部分,前端 iOS 应用程序使用 Alamofire 来处理请求。应用程序中没有用户,只有我(后端开发人员)和我的朋友(前端开发人员)。就是这样,没人用。我可以(并且将会)找出使用了哪个用户帐户并将其考虑在内。响应的结果是我在那里发布的。前端接收多个字节。没有其他的。我知道很奇怪,但我认为这可能是 html 错误代码的长度(调试设置为 True)。
标签: python django apache mod-wsgi ioerror