django在nginx上部署后出现 [Errno 5] Input/output error错误的解决
2017-10-13 00:00
2206 查看
环境:CentOS6.5 Gunicorn+Django+nginx
配置完成后,运行项目,部分时候会报 [Errno 5] Input/output error,一开始是print会报这个错,删除之后,其他地方也会报同样的错误。
我的解决过程和尝试如下:
我看到有篇文章提到这点,不过他用的uwsgi部署的,文章的思路是怀疑日志文件没地方去,导致了IO错误,解决方案就是增加日志配置。
地址http://shenwang.blog.ustc.edu.cn/freeshell%E4%B8%8A34218%E8%8A%82%E7%82%B9%E5%87%BA%E7%8E%B0django-errno-5-inputoutput-error/
根据此原理,我在nginx的conf配置文件的server节点下,增加日志路径配置:
但是这一步设置后,重启了nginx和gunicorn发现还是老样子。于是就想到会不会权限的问题。
2. 源代码目录的访问权限设置为777
确认源代码文件夹的访问权限,把所有文件的权限递归设置为777。nginx运行的时候,是在nginx.conf中配置的用户来运行的,不是你当前登录的用户,权限也会导致比较诡异的问题。这一步一定要最后确认,可能一开始你已经设置了777,但是中间你可能往目录中增加了一些配置文件,所以最后要检查下。
3.重启大法
不过这点设置了后,然并卵。查了好多材料,最后绝望中,我重启了linux服务器。然后就好了....
你们也可以尝试下重启大法。
至于上面哪一步是导致问题发生的,不清楚,反正我都做了,若你们遇到了同样的问题,可以逐步尝试下。
配置完成后,运行项目,部分时候会报 [Errno 5] Input/output error,一开始是print会报这个错,删除之后,其他地方也会报同样的错误。
我的解决过程和尝试如下:
1.nginx的conf配置文件,配置日志的路径。
我看到有篇文章提到这点,不过他用的uwsgi部署的,文章的思路是怀疑日志文件没地方去,导致了IO错误,解决方案就是增加日志配置。地址http://shenwang.blog.ustc.edu.cn/freeshell%E4%B8%8A34218%E8%8A%82%E7%82%B9%E5%87%BA%E7%8E%B0django-errno-5-inputoutput-error/
根据此原理,我在nginx的conf配置文件的server节点下,增加日志路径配置:
access_log /home/webroot/www/public/XianyuApi/nginx.access.log; error_log /home/webroot/www/public/XianyuApi/nginx.error.log;
但是这一步设置后,重启了nginx和gunicorn发现还是老样子。于是就想到会不会权限的问题。
2. 源代码目录的访问权限设置为777
确认源代码文件夹的访问权限,把所有文件的权限递归设置为777。nginx运行的时候,是在nginx.conf中配置的用户来运行的,不是你当前登录的用户,权限也会导致比较诡异的问题。这一步一定要最后确认,可能一开始你已经设置了777,但是中间你可能往目录中增加了一些配置文件,所以最后要检查下。
3.重启大法
不过这点设置了后,然并卵。查了好多材料,最后绝望中,我重启了linux服务器。然后就好了....
你们也可以尝试下重启大法。
至于上面哪一步是导致问题发生的,不清楚,反正我都做了,若你们遇到了同样的问题,可以逐步尝试下。
相关文章推荐
- 使用虚拟机安装Linux出现错误[Errno 5] Input/Output error
- 出现set_locale() failed (5): Input/output error的解决方法
- startsBBS在nginx环境下的部署,出现布局错误和验证码不能显示的解决方法
- 使用tornado运行web程序错误解决方法:IOError: [Errno 5] Input/output error
- 解决ubuntu挂载NTFS磁盘时出现input/output error
- yum makecache 时出现[Errno -3] Error performing checksum 错误的解决方法
- Django错误Error: [Errno 10013]解决办法
- CAS (10) —— JBoss EAP 6.4下部署CAS时出现错误exception.message=Error decoding flow execution的解决办法
- dedecms出现Error: Errno:0 SQL::错误解决方法
- 错误“Error adding system: Data not available.”警告“GI output for inputsystem: 8589dc02183b182ccba8c3”的解决
- nginx出现500 Internal Server Error错误的解决办法
- python2.7出现IOError: [Errno 5] Input/output error
- 解决sublime部署Node.js开发环境中出现[Decode error - output not utf-8]错误
- django出现Errno=No space left on device (ENOSPC)错误的解决方法
- PHP failed to ptrace(PEEKDATA) pid 13659: Input/output error错误解决方法
- 解决ubuntu挂载NTFS磁盘时出现input/output error
- 配置Nginx支持php,出现No input file specified错误的解决方法
- ubuntu 14.04使用root登陆出现错误“Error found when loading /root/.profile”解决
- 重启ipconfig 时,出现错误:Error: Connection activation failed.....解决方法
- 关于MySql安装后出现error:0错误,我的解决方法