Como Verificar Quais Módulos do Apache estão Habilitados/Carregados no Linux

Neste guia, falaremos brevemente sobre o front-end do servidor web Apache e como listar ou verificar quais módulos Apache foram habilitados em seu servidor.

Apache é construído com base no princípio da modularidade, desta forma, permite que administradores de servidores web adicionem diferentes módulos para estender suas funcionalidades primárias e melhorar o desempenho do Apache também.

Leitura Sugerida: 5 Dicas para Aumentar o Desempenho do Seu Servidor Web Apache

Alguns dos módulos Apache comuns incluem:

  1. mod_ssl – que oferece HTTPS para Apache.
  2. mod_rewrite – que permite corresponder padrões de URL com expressões regulares e executar um redirecionamento transparente usando .htaccess tricks, ou aplicar uma resposta de código de status HTTP.
  3. mod_security – que oferece a você proteger o Apache contra ataques de força bruta ou DDoS.
  4. mod_status – que permite monitorar a carga do servidor web Apache e estatísticas das páginas.

No Linux, o comando apachectl ou apache2ctl é usado para controlar a interface do servidor HTTP Apache, sendo um front-end para o Apache.

Você pode exibir as informações de uso para o apache2ctl conforme abaixo:

$ apache2ctl help
OR
$ apachectl help
apachectl help
Usage: /usr/sbin/httpd [-D name] [-d directory] [-f file]
                       [-C "directive"] [-c "directive"]
                       [-k start|restart|graceful|graceful-stop|stop]
                       [-v] [-V] [-h] [-l] [-L] [-t] [-S]
Options:
  -D name            : define a name for use in  directives
  -d directory       : specify an alternate initial ServerRoot
  -f file            : specify an alternate ServerConfigFile
  -C "directive"     : process directive before reading config files
  -c "directive"     : process directive after reading config files
  -e level           : show startup errors of level (see LogLevel)
  -E file            : log startup errors to file
  -v                 : show version number
  -V                 : show compile settings
  -h                 : list available command line options (this page)
  -l                 : list compiled in modules
  -L                 : list available configuration directives
  -t -D DUMP_VHOSTS  : show parsed settings (currently only vhost settings)
  -S                 : a synonym for -t -D DUMP_VHOSTS
  -t -D DUMP_MODULES : show all loaded modules 
  -M                 : a synonym for -t -D DUMP_MODULES
  -t                 : run syntax check for config files

O apache2ctl pode funcionar em dois modos possíveis, um modo Sys V init e um modo pass-through. No modo SysV init, o apache2ctl aceita comandos simples de uma palavra no formato abaixo:

$ apachectl command
OR
$ apache2ctl command

Por exemplo, para iniciar o Apache e verificar seu status, execute esses dois comandos com privilégios de usuário root usando o comando sudo, caso você seja um usuário normal:

$ sudo apache2ctl start
$ sudo apache2ctl status
Check Apache Status
tecmint@TecMint ~ $ sudo apache2ctl start
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message
httpd (pid 1456) already running
tecmint@TecMint ~ $ sudo apache2ctl status
Apache Server Status for localhost (via 127.0.0.1)

Server Version: Apache/2.4.18 (Ubuntu)
Server MPM: prefork
Server Built: 2016-07-14T12:32:26

-------------------------------------------------------------------------------

Current Time: Tuesday, 15-Nov-2016 11:47:28 IST
Restart Time: Tuesday, 15-Nov-2016 10:21:46 IST
Parent Server Config. Generation: 2
Parent Server MPM Generation: 1
Server uptime: 1 hour 25 minutes 41 seconds
Server load: 0.97 0.94 0.77
Total accesses: 2 - Total Traffic: 3 kB
CPU Usage: u0 s0 cu0 cs0
.000389 requests/sec - 0 B/second - 1536 B/request
1 requests currently being processed, 4 idle workers

__W__...........................................................
................................................................
......................

Scoreboard Key:
"_" Waiting for Connection, "S" Starting up, "R" Reading Request,
"W" Sending Reply, "K" Keepalive (read), "D" DNS Lookup,
"C" Closing connection, "L" Logging, "G" Gracefully finishing,
"I" Idle cleanup of worker, "." Open slot with no current process

E ao operar no modo pass-through, o apache2ctl pode aceitar todos os argumentos do Apache no seguinte formato:

$ apachectl [apache-argument]
$ apache2ctl [apache-argument]

Todos os argumentos do Apache podem ser listados da seguinte forma:

$ apache2 help    [On Debian based systems]
$ httpd help      [On RHEL based systems]

Verificar módulos ativados do Apache

Portanto, para verificar quais módulos estão ativados no seu servidor web Apache, execute o comando aplicável abaixo para a sua distribuição, onde -t -D DUMP_MODULES é um argumento do Apache para mostrar todos os módulos ativados/carregados:

---------------  On Debian based systems --------------- 
$ apache2ctl -t -D DUMP_MODULES   
OR 
$ apache2ctl -M
---------------  On RHEL based systems --------------- 
$ apachectl -t -D DUMP_MODULES   
OR 
$ httpd -M
$ apache2ctl -M
List Apache Enabled Loaded Modules
[root@tecmint httpd]# apachectl -M
Loaded Modules:
 core_module (static)
 mpm_prefork_module (static)
 http_module (static)
 so_module (static)
 auth_basic_module (shared)
 auth_digest_module (shared)
 authn_file_module (shared)
 authn_alias_module (shared)
 authn_anon_module (shared)
 authn_dbm_module (shared)
 authn_default_module (shared)
 authz_host_module (shared)
 authz_user_module (shared)
 authz_owner_module (shared)
 authz_groupfile_module (shared)
 authz_dbm_module (shared)
 authz_default_module (shared)
 ldap_module (shared)
 authnz_ldap_module (shared)
 include_module (shared)
....

Aqui está! Neste tutorial simples, explicamos como usar as ferramentas front-end do Apache para listar os módulos Apache habilitados/carregados. Tenha em mente que você pode entrar em contato usando o formulário de feedback abaixo para nos enviar suas perguntas ou comentários sobre este guia.

Source:
https://www.tecmint.com/check-apache-modules-enabled/