ホームページ >バックエンド開発 >PHPチュートリアル >centos6.5 - PHP / CentOS - failed to open stream: Too many open files

centos6.5 - PHP / CentOS - failed to open stream: Too many open files

WBOY
WBOYオリジナル
2016-06-06 20:29:481606ブラウズ

1,我刚开始以为是代码的问题,根据提示把出现打不开文件的地方给注释了,接着刷新页面仍然出现这种问题;可以排除代码的问题。

2,我开始怀疑是不是服务器空间小了,然后进入服务器查看服务器空间,还剩5G空间,然后我把一些日志文件给删除了,把一些以前备份没有用的也给删除了,刷新页面仍然出现这问题;

3,我开始百度,百度解释:打开流失败,打开太多的文件;进入服务器:查看ulimit -a 查看最大打开文件数,已经是最大值了open files (-n) 65535 ,而系统默认的是1024;

centos6.5 - PHP / CentOS - failed to open stream: Too many open files
4,然后我这边临时性解决的方案是,重启php和mysql,重新刷新页面,没有再出现这种情况了。但是根本性问题还是没有解决。

回复内容:

1,我刚开始以为是代码的问题,根据提示把出现打不开文件的地方给注释了,接着刷新页面仍然出现这种问题;可以排除代码的问题。

2,我开始怀疑是不是服务器空间小了,然后进入服务器查看服务器空间,还剩5G空间,然后我把一些日志文件给删除了,把一些以前备份没有用的也给删除了,刷新页面仍然出现这问题;

3,我开始百度,百度解释:打开流失败,打开太多的文件;进入服务器:查看ulimit -a 查看最大打开文件数,已经是最大值了open files (-n) 65535 ,而系统默认的是1024;

centos6.5 - PHP / CentOS - failed to open stream: Too many open files
4,然后我这边临时性解决的方案是,重启php和mysql,重新刷新页面,没有再出现这种情况了。但是根本性问题还是没有解决。

如果你的网站确实不是流量特别大,大部分情况下应该还是你的配置问题。虽然你用ulimit -a命令查出来open files的值是65535,但那是针对当前用户root的。一般的web进程的所属用户是www-root。你可以切换到www-root来看看open files

如果你用的php-fpm,打开php-fpm.conf,加上一行这个再重启就可以了

<code>rlimit_files = 65535</code>
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。