【发布时间】:2016-10-24 02:15:25
【问题描述】:
现在我使用flask来开发web app。
但一开始还不错,运行网页一段时间后,flask后端显示如下错误:
File "/usr/lib64/python2.6/BaseHTTPServer.py", line 329, in handle
self.handle_one_request()
File "/usr/lib/python2.6/site-packages/werkzeug/serving.py", line 251, in handle_one_request
return self.run_wsgi()
File "/usr/lib/python2.6/site-packages/werkzeug/serving.py", line 193, in run_wsgi
execute(self.server.app)
File "/usr/lib/python2.6/site-packages/werkzeug/serving.py", line 184, in execute
write(data)
File "/usr/lib/python2.6/site-packages/werkzeug/serving.py", line 152, in write
self.send_header(key, value)
File "/usr/lib64/python2.6/BaseHTTPServer.py", line 390, in send_header
self.wfile.write("%s: %s\r\n" % (keyword, value))
IOError: [Errno 32] Broken pipe
我的应用在端口 5000 app.run(debug=True,port=5000) 上运行,
我使用 nginx 作为 web 服务器,并在 nginx 配置文件中设置proxy_pass http://127.0.0.1:5000。
现在我真的不知道哪里错了,我使用session['email'] = request.form['email'],在其他文件中我使用email = session.get('email')。
这种用法对吗?如何设置会话活跃期?
或任何其他原因导致此错误?
然后我设置app.run(debug=False,port=5000),它显示新的错误
File "/usr/lib64/python2.6/SocketServer.py", line 671, in finish
self.wfile.flush()
File "/usr/lib64/python2.6/socket.py", line 303, in flush
self._sock.sendall(buffer(data, write_offset, buffer_size))
socket.error: [Errno 32] Broken pipe
为什么?
请帮帮我,谢谢。
【问题讨论】:
-
eamil和email,有错别字吗? -
我不会在生产中使用 werkzeug 服务器,使用 gunicorn 或 nginx uwsgi 之类的。
-
我拼错了,好像不是这个原因。
-
看起来我遇到了同样的问题:
File "/usr/lib/python2.7/BaseHTTPServer.py", line 401, in send_header self.wfile.write("%s: %s\r\n" % (keyword, value)) IOError: [Errno 32] Broken pipe。我使用以下要求:Babel==2.3.4 blinker==1.4 click==6.6 Flask==0.11.1 Flask-Babel==0.11.1 Flask-Mail==0.9.1 Flask-WTF==0.12 itsdangerous==0.24 Jinja2==2.8 MarkupSafe==0.23 pytz==2016.4 speaklater==1.3 Werkzeug==0.11.10 WTForms==2.1.
标签: python web flask webserver