我一直在研究接受连接的http服务器,然后根据主机名,从.so加载正确的项目,生成客户端要求的页面,然后将它们发回。 既然我有几个工作项目,我有兴趣将它们提供给其他人,但这是我的问题:
我通过ssh连接到我的专用服务器,并从那里启动我的守护进程,但过了一段时间,页面不再可访问,因为我的程序不再运行。 一段时间后我也被服务器踢了。我想知道 : 如何让我的服务器保持运行?经过一段空闲时间后我继续被ssh踢出的事实解释了为什么我的守护进程被关闭了吗?
提前感谢能够给我一些答案的人。
答案 0 :(得分:0)
当您的SSH会话超时时,SIGHUP被发送到从当前交互式shell分叉的子进程。这就是流程终止的原因(服务器不再运行)。
为避免服务器踢出空闲的SSH连接,请将ServerAliveInterval
设置为从服务器发送响应请求(例如~/.ssh/config
)
Host *
ServerAliveInterval 30
要避免shell子进程终止,请参阅
简而言之,有3种选择:
tmux
或screen
会话中的CLI中启动服务器注意:如果已正确守护服务器实例,请尝试查看
monit
或supervisord
以保持其正常运行;-D