Apache 多服务启动注意事项

说到Apache多服务启动,很多教程提到的就只是:

1
2
apachectl start -f conf/profile1.conf
apachectl start -f conf/profile2.conf

或:

1
2
httpd -k -f conf/profile1.conf start
httpd -k -f conf/profile2.conf start

但是它们都忽略了一个注意事项,就是pid的路径配置。

如果 profile1.confprofile2.conf 都使用默认配置,在启动 profile2.conf 时,则会提示 httpd 已启动,导致 profile2.conf 的服务无法启动。

要想解决这个冲突问题,就必须为 profile2.conf 配置不同的 pid 路径,正确的方法是在 profile2.conf 配置里加入 PidFile 参数,如:

PidFile /var/run/profile2.pid

这样,在启动 profile2.conf 时,脚本就会到指定的路径去寻找 pid ,若 pid 不存在,则可以顺利启动。