我遇到了一个关于apache和ssh的奇怪问题,我可以将其与hg update命令联系起来。
执行
后
$ hg update
来自更改集推送超过1或2个文件。大约一分钟后,apache服务器返回403(在本地文件上,如图像)和404(在外部文件,如jquery库)。
此外,在同一时间段内,如果我尝试将更多更改推送到远程服务器,我会收到回复
remote: ssh: connect to host *hostname* port 22: No route to host
大约1或2分钟后,问题消失,服务器返回工作状态,新的更改成功到位。
执行hg update后,shell立即返回,没有响应。通常,当发生这种情况时,更改就会成功到位。
我唯一的猜测是mercurial作为后台进程挂起并以某种方式锁定httpd和sshd操作?
我查看了apache日志,没有任何错误表明任何异常情况正在发生。
更新
我在apache error_log中发现了两个我认为可能相关的错误。
(104)Connection reset by peer: core_output_filter: writing data to the network
(32)Broken pipe: core_output_filter: writing data to the network
当我重新启动我的apache服务器时,mercurial问题消失了。不过,我想知道是什么原因引起了这个问题。
尽管在httpd.conf中关闭了EnableSendFile和EnableMMAP,但两个日志错误仍然存在
谢谢,
版
答案 0 :(得分:1)