我正在尝试在一台服务器上安装daemontools两个apaches。 一个apache 2.2监听端口80代理请求到第二个apache 1.3监听端口8888./run脚本如下:
#!/bin/sh # apache 1.3 exec /apache_1_3/apache/bin/httpd -F #!/bin/sh # apache 2.2 exec /apache_2_2/apache/bin/httpd -D FOREGROUND
守护进程监视这两个Apache罚款。 但是,如果我停止apache2.2(使用svc -t或apachectl),apache 1.3将在error_log中看到以下错误
[crit] (98)Address already in use: make_sock: could not bind to port 8888
我不得不手动apachectl停止apache1.3停止错误信息clobber日志文件。
在使用daemontools之前没有这样的问题。
任何想法为什么发生这种情况?
你不应该在一个脚本中定义两个守护进程。 您正在放弃两个守护进程,但我相信Daemontools只会监视第二个守护进程。
以下是我相信正在发生的事情:
run脚本。