Configurando o Servidor Web Apache
O ServBay permite que você gerencie e configure com facilidade o pacote integrado do servidor web Apache. Por meio da interface gráfica do ServBay, é possível ajustar as configurações centrais do Apache para atender diferentes demandas de projetos de desenvolvimento.
Acessando as Configurações do Apache
- Abra o aplicativo ServBay.
- Na barra de navegação à esquerda, clique em
Servidor Web
. - Selecione a aba
Apache
.
Você verá a interface de configuração do Apache, como mostrado na imagem abaixo:
Explicação dos Principais Parâmetros
Abaixo estão as descrições detalhadas de cada parâmetro disponível na interface de configuração do Apache:
Configurações Básicas
- HTTP Port: Porta em que o Apache escuta conexões HTTP. O padrão é
80
. - HTTPS Port: Porta em que o Apache escuta conexões HTTPS. O padrão é
443
. - Server Name: Nome e porta usados pelo servidor para se identificar. O padrão
127.0.0.1
geralmente serve para acesso local. - Server Root: Diretório raiz onde está instalado o pacote do Apache. Atenção: Este não é o diretório dos arquivos do seu site (o diretório raiz do site é configurado separadamente ao adicionar um site), mas sim o caminho dos arquivos do programa Apache. Geralmente, o padrão é
/Applications/ServBay/package/apache/current
.
Otimização de Performance (Performance Tuning)
- Timeout: Número máximo de segundos que o servidor espera antes de abandonar uma operação de I/O. O padrão é
300
segundos. - Max KeepAlive Requests: Máximo de requisições permitidas em uma conexão persistente.
1000
permite muitas requisições reaproveitando a mesma conexão;0
significa sem limite. - KeepAlive Timeout: Máximo de segundos que o servidor espera pela próxima requisição antes de fechar uma conexão persistente. Padrão é
60
segundos. - Keep Alive: Define se conexões HTTP persistentes (KeepAlive) estão habilitadas. Recomendado deixar
On
para melhorar a performance. - MPM StartServers: Quantidade de processos filhos criados quando o servidor é inicializado.
- MPM MaxSpareThreads: Número máximo de threads ociosos. Controla a quantidade de threads reservas para atender picos de requisições.
- MPM MaxConnectionsPerChild (anteriormente chamado MaxRequestsPerChild): Máximo de conexões que cada processo filho pode tratar durante seu ciclo de vida.
0
significa sem limite. Ajuda a prevenir impacto de possíveis vazamentos de memória. - MPM MaxRequestWorkers (anteriormente chamado MaxClients): Máximo de requisições simultâneas que podem ser processadas ao mesmo tempo (soma de todos os processos filhos). É um ajuste fundamental para desempenho no Apache.
- MPM ThreadsPerChild: Número fixo de threads criados por cada processo filho (aplicável para MPM
worker
ouevent
).
Funcionalidades e Características (Features & Characteristics)
- Access File Name: Diretiva que especifica o nome do arquivo de configuração distribuída, normalmente
.htaccess
. Permite ou proíbe que arquivos.htaccess
sobrescrevam a configuração principal do servidor. - Use Canonical Name: Controla como o Apache constrói URLs autorreferenciadas.
Off
é normalmente mais flexível. - Server Signature: Adiciona uma linha no rodapé das páginas geradas pelo servidor (como páginas de erro), com informações sobre a versão e o nome do host virtual. Por questão de segurança, recomenda-se
Off
em ambientes de produção. - Hostname Lookups: Realiza uma consulta reversa DNS para obter o hostname do IP do cliente que faz requisições.
Off
favorece a performance, já que consultas DNS podem ser lentas. - Server Tokens: Define o nível de detalhe das informações enviadas no cabeçalho de resposta do servidor (
Server:
).Minor
(exemplo: Apache/2.4) é mais seguro do queFull
(exemplo: Apache/2.4.58 (Unix) PHP/8.3.1).Prod
mostra apenasApache
.
Administração e Logs (Admin & Logging)
- Server Admin: Endereço de e-mail do administrador exibido nas mensagens de erro retornadas pelo servidor ao cliente.
- Log Level: Define o nível de detalhamento das mensagens registradas no log de erros (
error_log
). O mais comum éwarn
, que registra advertências e erros mais graves. Existem também outros níveis comodebug
,info
,notice
,error
,crit
,alert
,emerg
.
Módulos (Modules)
Nesta área, estão listados os módulos Apache disponíveis. Você pode marcar para ativar os módulos desejados ou desmarcar para desativá-los. Entre os módulos mais comuns estão:
mod_rewrite
: Manipulação e reescrita de URLs.mod_ssl
: Suporte para SSL/TLS (HTTPS).mod_deflate
: Compressão de conteúdo durante a transferência.mod_expires
: Controle de cabeçalhos de cache.mod_proxy
e módulos relacionados: Proxy reverso.mod_auth_basic
,mod_auth_digest
: Autenticação básica ou digest.
Sempre que ativar ou desativar módulos, salve as configurações e, possivelmente, reinicie o serviço Apache para que as mudanças tenham efeito.
Índice de Diretório (Directory Index)
- Directory Index: Lista de arquivos que o Apache procura em um diretório quando o URL requisitado aponta para ele. O Apache busca os arquivos na ordem listada e retorna o conteúdo do primeiro que encontrar. Normalmente o padrão é
index.html index.htm index.php
.
Configurações SSL/TLS
Essas configurações são responsáveis pelas funcionalidades HTTPS do Apache.
- SSLCipherSuite / TLSCipherSuite: Define quais conjuntos de cifras (ciphers) estarão disponíveis no servidor. Utilizar cifras modernas e robustas é vital para a segurança. O ServBay já oferece um valor padrão recomendado.
- SSLProxyCipherSuite: Configura as cifras para conexões SSL feitas pelo Apache enquanto atua como proxy reverso.
- SSLHonorCipherOrder:
On
faz com que o servidor dê preferência às cifras que ele lista, ao invés das do cliente. Recomenda-se deixarOn
. - SSLStrictSNIVHostCheck:
On
recusa conexões caso o nome do host fornecido pela requisição SNI (Server Name Indication) do cliente não corresponda a nenhum virtual host configurado. Aumenta a segurança. - ProtocolHonorOrder: Semelhante ao
SSLHonorCipherOrder
, mas controla a ordem de negociação dos protocolos. - SSLProtocol: Define as versões de protocolo SSL/TLS permitidas. Exemplo:
all -SSLv2 -SSLv3
autoriza todos os protocolos modernos, exceto os inseguros SSLv2 e SSLv3. - SSLProxyProtocol: Define os protocolos permitidos para conexões SSL feitas pelo Apache enquanto atua como proxy reverso.
- Protocols: Configura a ordem de negociação dos protocolos suportados, como ativação do HTTP/2. Exemplo:
h2 h2c http/1.1
prioriza HTTP/2 (criptografadoh2
ou em texto claroh2c
), depois recai para HTTP/1.1.
Salvar e Redefinir
- Reset: Clicar neste botão restaura todas as configurações do Apache para os padrões do ServBay.
- Save: Clicar neste botão salva todas as alterações feitas nas configurações do Apache. Após salvar, o ServBay aplicará as alterações automaticamente. Em alguns casos, se o serviço Apache estiver rodando, pode ser necessário reiniciá-lo rapidamente para que as alterações entrem em vigor.
Dicas Importantes
- As alterações aqui realizadas dizem respeito à configuração global do Apache. Configurações específicas para sites individuais (virtual hosts), como
DocumentRoot
e regrasRewriteRule
devem ser ajustadas ao adicionar ou editar umSite
(Websites). - Se visualizar a mensagem "Service Apache is not enabled" no topo da interface de configuração, significa que o serviço Apache não está rodando no momento. Ainda assim, é possível modificar e salvar as configurações; porém, as mudanças só serão efetivadas na próxima inicialização do serviço Apache. Você pode ativar o Apache pelo painel principal do ServBay ou pelo menu
Pacotes
(Packages).
Resumo
O ServBay oferece uma interface intuitiva para gerenciar as configurações centrais do Apache Web Server. Compreendendo cada uma dessas opções, você pode ajustar o comportamento, desempenho e segurança do Apache de acordo com a sua necessidade de desenvolvimento, extraindo o máximo do ServBay como ambiente local para seus projetos.