(2)没有这样的文件或目录:mod_wsgi(pid = 24507)

时间:2015-03-26 07:01:44

标签: django ubuntu mod-wsgi

我在Ubuntu Precise和Ubuntu Lucid上运行了一些Django应用程序。 我注意到有时在我的日志中我有一些503。在那些503期间,我在我的apache错误日志中找到了这些日志:

  

(2)No such file or directory: mod_wsgi (pid=24507): Unable to connect to WSGI daemon process 'appname' on '/var/run/apache2/wsgi.27607.2.18.sock' after multiple attempts

我的所有应用都设置了WSGIDaemon模式,其设置与此类似:

WSGIDaemonProcess appname display-name=wsgi-appname \
        processes=4 \
        threads=4 \
        maximum-requests=1000 \
        inactivity-timeout=120 \
        deadlock-timeout=60 \
        shutdown-timeout=5
WSGIProcessGroup appname

mod_wsgi文档在这里引用了这个问题:https://code.google.com/p/modwsgi/wiki/ConfigurationIssues#Location_Of_UNIX_Sockets 但这似乎并不适用于我的情况,因为我偶尔只会看到错误。

有趣的是要注意: 在我的一台服务器上,apache于3月12日启动。我上次看到错误的时间是Mar 25 18:02:32,它与.sock文件的创建日期相匹配。 编辑:当apache重新加载发生时,此时间戳更新。我想知道重装是否会导致503s ......

有谁知道为什么会这样或者我如何调试它?

1 个答案:

答案 0 :(得分:1)

是。 Apache正常重启可能会导致此问题,尤其是在HTTP客户端使用保持活动连接的情况下。如果您只运行带有mod_wsgi守护程序模式的Python Web应用程序而不使用Apache进行其他任何操作,因为正常重启并不会对mod_wsgi守护程序进程执行任何特殊操作,您也可以使用Apache重新启动而不是重新加载。

有关mod_wsgi如何工作的更深入的描述,请使用mod_wsgi列表而不是StackOverflow,因为这里不是讨论论坛。