Apache 2:如何在不重启的情况下重新加载HTTPD配置文件

时间:2019-11-20 08:54:15  来源:igfitidea点击:

在Debian/CentOS Linux操作系统中,如何在不重新启动Apache2 Web服务器的情况下重新加载新的配置更改?

我们可以优雅的重启Apache v1.x or v2.x httpd守护进程。
我们可以向httpd发送以下信号来启动、重新启动、重新加载或者停止服务器:

  1. start
  2. restart
  3. graceful
  4. stop
  5. graceful-stop

关于正常重启Apache Web服务器的说明

我们需要向apache服务器发送USR1信号:

这个(USR1)信号导致父进程通知子进程在当前请求之后退出(或者如果子进程没有提供任何服务,则立即退出)。
父进程将重新读取其配置文件并重新打开其日志文件。当每个子进程都消失时,父进程将其替换为新一代配置中的子进程,该子进程将立即开始为新请求提供服务。

更改配置文件后,优雅地重启Apache 1.x/2.x

以root用户身份执行以下命令:

apachectl -k graceful

或者

apache2ctl -k graceful

或者使用Sys V init脚本重启。以下命令仅适用于RHEL/CentOS Linux:

/etc/init.d/httpd graceful

或者

/sbin/service httpd graceful

在Debian/Ubuntu Linux中使用以下语法重新加载apache配置:

/etc/init.d/apache2 reload

监控apache重启进度

在向Apache 2发出信号后,可以通过tail命令查看Apache日志文件:

## 在RHEL / CentOS 中 ##
tail -f /var/log/httpd/error_log
 
## 在Debian / Ubuntu 中##
tail -f /var/log/apache2/error.log
 
## 在FreeBSD Unix中 ##
tail -f /var/log/httpd-error.log