Is there a command that list all enabled Apache modules?


To list apache loaded modules use:

apachectl -M


apachectl -t -D DUMP_MODULES 

or on RHEL,CentoS, Fedora:

httpd -M

For more options man apachectl. All these answers can be found just by little google search.

  • 3
    -M will also work. – Andrew B Feb 4 '13 at 12:07
  • 27
    I love this comment about google search (found this answer via google) – Pawelmhm Sep 25 '13 at 19:41
  • The use of server-info is harder to find via google and gives much more details && the ability to give access to the information to people who don't have shell access (eg client, web developpers, project managers, ...) – user130370 Nov 6 '13 at 12:44
  • man apachectl on Ubuntu 20.04 does not include this option (or others), but the command still works. The man page isn't that helpful here – Rory Nov 18 '20 at 12:15

Also you can use server-info to get info from remote servers

<Location /server-info>
   SetHandler server-info
   Order allow,deny
   Allow from xxx.xxx.xxx.xxx

You can get list of all enabled Apache modules at http://your.host.example.com/server-info?list


You need to enable the info module:

sudo a2enmod info.load
sudo a2enmod info.conf
sudo service apache2 restart

After restart:


will provide a long list of modules, and configuration info.

To view from remote servers, you can change the 'Requires' option in /etc/apache2/mods-available/info.conf to allow remote servers to view info.

  • 1
    Why not use the a2enmod command to enable an {installed} module, instead of "symlinking" it manually? – Flo Schild Jun 8 '15 at 8:37
  • Yes a2enmod is more correct. When I'm editing configs I usually stay with the files and don't think of the specialty commands that I rarely use. – rickfoosusa Jun 9 '15 at 14:02
  • Okay, it works both ways anyway, in 2.4 (maybe already earlier also?) you also have the a2enconf to symlink files from "conf-available" directory to "conf-enabled" :) – Flo Schild Jun 9 '15 at 14:19

This works also:

apache2ctl -M

The above answers are old and no longer work for my modern Fedora Server 31 / 32 and Apache 2.4.

Here's what does:

httpd -t -D DUMP_MODULES

But, there is a caveat that this will only work if you have an appropriately configured /etc/httpd/conf/httpd.conf, so if you're in the middle of editing to set LogLevel, it won't work if your edits are in-progress and not valid!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.