Apache – Gerenciando módulos
Os módulos do Apache servem para diversas utilizadades, tais como efetuar controle de banda, aumentar a segurança, gravar logs em bancos de dados, dentre muitas outras funcionalidades. Porém não basta apenas saber para que podemos utilizar os módulos, é preciso efetuar o gerenciamento dos mesmos, abaixo é exibida uma linha de comandos utilizando o utilizando o utilitário apachectl, que é um front-end para o Apache utilizado para facilitar seu gerenciamento:
host:~# apachectl -t -D DUMP_MODULES Loaded Modules: core_module (static) log_config_module (static) logio_module (static) mpm_prefork_module (static) http_module (static) so_module (static) alias_module (shared) auth_basic_module (shared) authn_file_module (shared) authz_default_module (shared) authz_groupfile_module (shared) authz_host_module (shared) authz_user_module (shared) autoindex_module (shared) cgi_module (shared) deflate_module (shared) dir_module (shared) env_module (shared) log_sql_module (shared) log_sql_ssl_module (shared) mime_module (shared) negotiation_module (shared) perl_module (shared) php5_module (shared) reqtimeout_module (shared) setenvif_module (shared) status_module (shared) unique_id_module (shared) vhost_alias_module (shared) Syntax OK
Como visto acima, o apachectl listou todos os módulos carregados no servidor utilizado neste teste e no final exibiu uma linha informando que a sintaxe está ok. Um dos mandamentos em segurança e desempenho de sistemas, é desabilitar qualquer funcionalidade que não esteja sendo executada, isso para que esta funcionalidade não consuma recursos de sistema e nao deixe brechas de segurança desconhecidas pelo administrador. Por exemplo, para desabilitarmos o módulo vhost_alias, podemos utilizar o comando a2dismod:
host:~# a2dismod vhost_alias_module ERROR: Module vhost_alias_module does not exist! yoda:~# a2dismod vhost_alias Module vhost_alias disabled. Run '/etc/init.d/apache2 restart' to activate new configuration!
Após desabilitar o módulo, é necessário reiniciar o Apache:
host:~# /etc/init.d/apache2 restart Restarting web server: apache2 ... waiting .
O comando a2dismod é uma facilidade presente na distribuição Debian, da mesma que forma que podemos desabilitar um módulo com facilidades, podemos também habilitar com o comando a2enmod utilizando o mesmo procedimento realizado para desabilitar um módulo. Repare que os módulos são listados através do apachectl com uma palara “_module” ao final, para executar o procedimento de habilitar ou desabilitar módulos, deve ser digitado somente o nome do módulo como no exemplo anterior.