我有一个服务器(豹服务器,不是我的select)运行Apache和MySQL。 几个月前,服务器开始随机提出“禁止”错误,阻止访问PHP应用程序。 这种行为随机停止。
现在,几天前我安装了Passenger并部署了一个Sintra / Rack应用程序。 应用程序以/Library/WebServer/Documents/presto/current/public的用户acarneg运行(例如), acarneg拥有整个结构。 _www用户可以通过ACL访问目录chmod +a "_www allow read,write,..." 。
一切都很好! 但是经过12或24小时的随机间隔后,Passenger会抛出一个错误,这也会阻止PHP应用程序运行。 Passenger Error #2. Cannot stat file config.ru. Permission denied. 但权限并没有改变(确认),所有人必须做的解决错误是sudo apachectl graceful 。
如果权限没有改变,Apache似乎没有合法的问题,是什么导致这个混乱? 为什么之前停下来,为什么又恢复了!?!?!?
谢谢您的帮助!
您的Apache可能达到了最大打开文件限制。 Apache会导致权限错误,这也解释了为什么需要一段时间,并通过重新加载Apache来解决。
我不是很熟悉Mac,但应该有一个命令来检查一个进程的打开文件。 (例如lsof,pfiles,procfiles)。
可能的决议是:
另请参阅Apache文档中的文件描述符限制 。
文件系统存储在哪里? 它是否需要Kerberos访问数据,或AFS或其他东西,以便您的问题是一个到期票?