Stopping Apache Httpd Web Server Apache2

Posted on  by admin

apachectl is a front end to the Apache HyperText Transfer Protocol (HTTP) server. It is designed to help the administrator control the functioning of the Apache httpd daemon.

The apachectl script can operate in two modes. First, it can act as a simple front-end to the httpd command that simply sets any necessary environment variables and then invokes httpd, passing through any command line arguments. Second, apachectl can act as a SysV init script, taking simple one-word arguments like start, restart, and stop, and translating them into appropriate signals to httpd.

  1. The apache stop menu item in Backtrack Linux accomplishes one goal which is to stop the Apache web server. The previous article for apache start would have been enough to explain the basics to anyone using Apache on Backtrack Linux but since my goal is to write an article for every menu item and every tool within Backtrack here is the one for apache stop.
  2. In the search box type 'services' 3). Click on 'services' and you will find your apache installed from the list. Select apache and you will find the options of start/restart/stop on the left of your screen or you will find the options of start/restart/stop by right clicking on the apache.
  3. Beware on Centos7 with Apache httpd 2.4 installed from the repos (yum, dnf), that apachectl no longer directly starts httpd, but instead is just a wrapper that makes systemctl calls. The httpd.service systemd unit file that gets installed by default with the RPM actually starts httpd directly.

Oct 10 20:01:42 lee-Desktop apache21562:. Starting Apache httpd web server apache2 Oct 10 20:01:43 lee-Desktop apache21562: AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using The Apache HTTP Server ('httpd') was launched in 1995 and it has been the most popular web server on the Internet since April 1996. It has celebrated its 25th birthday as a project in February 2020. The Apache HTTP Server is a project of The Apache Software Foundation. Apache httpd 2.4.46 Released 2020-08-07 ΒΆ.

If your Apache installation uses non-standard paths, you will need to edit the apachectl script to set the appropriate paths to the httpd binary. You can also specify any necessary httpd command line arguments. See the comments in the script for details.

The apachectl script returns a 0 exit value on success, and >0 if an error occurs. For more details, view the comments in the script.


In order to stop or restart the Apache HTTP Server, you must send a signal to the running httpd processes. There are two ways to send the signals. First, you can use the unix kill command to directly send signals to the processes. You will notice many httpd executables running on your system, but you should not send signals to any of them except the parent, whose pid is in the PidFile. That is to say you shouldn't ever need to send signals to any process except the parent. There are four signals that you can send the parent: TERM, USR1, HUP, and WINCH, which will be described in a moment.

Stopping Apache Httpd Web Server Apache2

To send a signal to the parent you should issue a command such as:

Apache Httpd Configuration Example

HttpdStopping Apache Httpd Web Server Apache2

kill -TERM `cat /usr/local/apache2/logs/`

Apache Httpd

The second method of signaling the httpd processes is to use the -k command line options: stop, restart, graceful and graceful-stop, as described below. These are arguments to the httpd binary, but we recommend that you send them using the apachectl control script, which will pass them through to httpd.

Apache Httpd Linux

After you have signaled httpd, you can read about its progress by issuing:

How To Stop Apache2 Server

Modify those examples to match your ServerRoot and PidFile settings.