This article is part of the Apache Server Guide series:
- Securing Apache on Ubuntu – Part 1
- Securing Apache on Ubuntu – Part 2
- Optimizing Apache Performance – Part 1
- Optimizing Apache Performance – Part 2
- Setting Up Name-Based Virtualhost Apache
- Setting Up IP and Port-Based Virtualhost in Apache
- How to Set Up the Password Protect Web Directory in Apache
- Setting up Apache Server with SSL Support on Ubuntu
- Setting Up Fail2ban to Protect Apache from a DDOS Attack
- How to Set Up Webdav with Apache on Ubuntu
- Monitor Apache Web Server Using Mod_status
- How to Protect Against DDoS with Mod_evasive on Apache Server
Apache is the most well-known and widely used web server around the world. For a Linux system administrator, it is important to monitor and debug Apache performance problems. Mod_status is an Apache module that displays a web page containing statistics about the web server’s current state including worker processes and active connections. It helps to monitor web server load with an HTML interface via a web browser. It is one of the most helpful and easiest modules to configure when you install Apache on Ubuntu.
Apache’s mod_status module shows you the following information:
- Restart Time
- Server Uptime
- Server Load
- CPU Usage and CPU Load
- Total incoming requests
- Total number of bytes and counts server
- Total number of idle and busy workers
You can see a demo of Apache’s status by visiting the following URL: http://www.apache.org/server-status
Enable mod_status in Apache
mod_status module is enabled in Ubuntu 14.04. If not, you can enable it by running:
To enable access to the server status page, you need to edit the
mod_status default configuration file located in the “/etc/apache2/mods-enabled/” directory. You can edit the “status.conf” file by running:
Find the section
Location /server-status, remove the
# before the
192.0.2.0/24 line and add the IP address of the remote computer you will be using to access your web server:
Save and close the file.
The above configuration is only for the default Apache website. If you have created one or more websites (Virtual Hosts), then the above configuration won’t work. You will need to configure the above settings for each virtual host. In this example let’s configure the Apache default virtual host for
You can do this by editing the Apache default virtual host config file:
Add the following lines under the section
Save and close the file and restart Apache to reflect the changes.
View the Status Page
Now, from a remote machine, open your web browser and access the Apache status page using url “http://your-server-ip/server-status“.
You will see something like the above page that will give you information of your Apache server’s performance and load.
Apache’s mod_status module is a very useful tool for monitoring a web server’s performance. Monitoring the Apache statistics will help you to configure Apache to achieve the best performance.