Python的问题解决: IOError: [Errno 32] Broken pipe,,错误一:遇到一个很奇
Python的问题解决: IOError: [Errno 32] Broken pipe,,错误一:遇到一个很奇
错误一:
遇到一个很奇怪的问题, web.py代码里面报错
IOError:[Errno32]Brokenpipe
启动命令:
nohuppythonxxx.py>>xxx.log&
ssh登录到机器上, 启动, 不会出现
远程ssh执行启动脚本, 就会出现IOError问题
查看进程pid, ll /proc/<pid>/fd 发现, stderr也就是fd为2的文件, 竟然是个pipe, 是个broken pipe, 错误的地方找到了
猜测可能是ssh登录过去, nohup会redirect stderr, 默认重定向到stdout, 不过ssh会话的stdout应该是pipe, 因为需要把输出从远端机器回传到本机
nohup把stderr重定向到了这个pipe上, 当ssh会话结束时, pipe自然会被关闭, 这样当程序代码中往stderr里面写入东西的时候, 就会报错了
错误二:
针对以上问题单机执行时候,发现不再报错,但是为了一定的处理,前面使用nginx作为反向代理,结果又出现
IOError:[Errno32]Brokenpipe
通过F12 发现,post 加载某个js 文件超时,并出现504 Time-out
检查js文件没有问题,
回忆,之前没有使用nginx前,此问题已经解决,为何突然又出现,
经过资料查询,使用以上nginx 配置解决
应该是读取时间设置过短,导致超时:
location/{proxy_read_timeout300;...........}
这种问题,让人蛋疼。
本文出自 “crazy_sir” 博客,请务必保留此出处http://douya.blog.51cto.com/6173221/1836848
Python的问题解决: IOError: [Errno 32] Broken pipe
相关内容
- python3.7导入unittest,默认执行不是unittest,,随笔。学习
- Python——assert、isinstance的用法,,1.assert函数
- python之用smtplib模块使用第三方smtp发送邮件(通过flas
- python 系统编程之创建进程 create process,,一、forking
- 从尾到头打印链表(Python and C++解法),,题目: 输
- python带参数和不带参数装饰器,,http://blo
- Python 之 ImportError: No module named ***,,如果想使用非当前
- python中入口函数的用法,,入口函数的用法 先
- Python2和Python3的区别(未完待续。。。。),,1、print函
- Python基本数据类型(二),,数字类型:数字的定义
评论关闭