我有一个 Web 应用程序,它使用 php 的本机函数写入文件,例如fopen()
,fwrite()
在进程结束时写入文件后,我关闭文件句柄fclose()
。
Web 应用程序还使用exec()
和shell_exec()
在某些地方执行外部程序。
此 Web 应用程序主要部署在 Linux 服务器上。最近在生产服务器上,我们注意到它无法写入文件并抛出此错误的问题:
“打开的文件太多”
所以我的问题是:执行上述操作(文件写入和通过 PHP 执行外部命令)是否可能导致此问题并打开了太多打开的文件,我现在收到此错误?
我确保在打开文件句柄进行写入/读取时,我会关闭它们。