- Entendendo um pouco as mensagens de erro Apache e depois as personalizando em um servidor Linux CentoOS -
Lista com os erros e mensagens.
2XX – Sucesso
200 OK
201 Criado
202 Aceito
203 Informação não-autoritativa *
204 Nenhum conteúdo
205 Conteúdo resetado *
206 Conteúdo parcial *
3XX – Redirecionamento
300 Múltiplas escolhas
301 Movido Permanentemente
302 Movido Temporariamente
303 Veja outra *
304 Não modificada
305 Use o Proxy (redirecionamento proxy) *
4XX – Erros no Cliente
400 Requisição incorreta
401 Não autorizado
402 Pagamento Requerido *
403 Bloqueado
404 Não encontrada
405 Método não permitido *
406 Não aceitável *
407 Autenticação via proxy requerida *
408 Tempo limite da requisição expirado *
409 Conflito *
410 Gone *
411 Tamanho requerido *
412 Falha na pré-condição *
413 A requisição parece ser grande *
414 A URL requisitada é muito longa *
415 Tipo de mídia não suportado
5XX – Erros no Servidor
500 Erro Interno no Servidor
501 Não implementado
502 Gateway incorreto
503 Serviço não disponível
504 Tempo limite no gateway *
505 Versão HTTP não suportada *
No servidor Linux CentoOS para personalizar as mensagens devemos modificar o arquivo httpd.conf que está em /etc/httpd/conf/httpd.conf vamos acessa-lo:
[root@CentOS6 ~]# vim /etc/httpd/conf/httpd.conf
E encontre o trecho abaixo do arquivo:
Alias /error/ “/var/www/error/”
<IfModule mod_negotiation.c>
<IfModule mod_include.c>
<Directory “/var/www/error”>
AllowOverride None
Options IncludesNoExec
AddOutputFilter Includes html
AddHandler type-map var
Order allow,deny
Allow from all
LanguagePriority en es de fr
ForceLanguagePriority Prefer Fallback
# ErrorDocument 404 /var/www/erros/naoencontrado.html
</Directory>
# ErrorDocument 400 /error/HTTP_BAD_REQUEST.html.var
# ErrorDocument 401 /error/HTTP_UNAUTHORIZED.html.var
# ErrorDocument 403 /error/HTTP_FORBIDDEN.html.var
# ErrorDocument 404 /error/HTTP_NOT_FOUND.html.var
# ErrorDocument 405 /error/HTTP_METHOD_NOT_ALLOWED.html.var
# ErrorDocument 408 /error/HTTP_REQUEST_TIME_OUT.html.var
# ErrorDocument 410 /error/HTTP_GONE.html.var
# ErrorDocument 411 /error/HTTP_LENGTH_REQUIRED.html.var
# ErrorDocument 412 /error/HTTP_PRECONDITION_FAILED.html.var
# ErrorDocument 413 /error/HTTP_REQUEST_ENTITY_TOO_LARGE.html.var
# ErrorDocument 414 /error/HTTP_REQUEST_URI_TOO_LARGE.html.var
# ErrorDocument 415 /error/HTTP_UNSUPPORTED_MEDIA_TYPE.html.var
# ErrorDocument 500 /error/HTTP_INTERNAL_SERVER_ERROR.html.var
# ErrorDocument 501 /error/HTTP_NOT_IMPLEMENTED.html.var
# ErrorDocument 502 /error/HTTP_BAD_GATEWAY.html.var
# ErrorDocument 503 /error/HTTP_SERVICE_UNAVAILABLE.html.var
# ErrorDocument 506 /error/HTTP_VARIANT_ALSO_VARIES.html.var
Este > Alias /error/ “/var/www/error/” identifica onde estão os erros do Apache no servidor*
Escolha uma das linhas com a mesagem de erro (ou todas) e retire o # delas, caso não tenha o erro listado conforme nossa fonte.
Como já falamos acima o caminho /var/www/error/ contém a listagem dos erros, vamos acessa-lo:
[root@CentOS6 ~]# cd /var/www/error/
contact.html.var
HTTP_BAD_GATEWAY.html.var
HTTP_BAD_REQUEST.html.var
HTTP_FORBIDDEN.html.var
HTTP_GONE.html.var
HTTP_INTERNAL_SERVER_ERROR.html.var
HTTP_LENGTH_REQUIRED.html.var
HTTP_METHOD_NOT_ALLOWED.html.var
HTTP_NOT_FOUND.html.var
HTTP_NOT_IMPLEMENTED.html.var
HTTP_PRECONDITION_FAILED.html.var
HTTP_REQUEST_ENTITY_TOO_LARGE.html.var
HTTP_REQUEST_TIME_OUT.html.var
HTTP_REQUEST_URI_TOO_LARGE.html.var
HTTP_SERVICE_UNAVAILABLE.html.var
HTTP_UNAUTHORIZED.html.var
HTTP_UNSUPPORTED_MEDIA_TYPE.html.var
HTTP_VARIANT_ALSO_VARIES.html.var
Reparem também na extensão .var pois dentro destes arquivos existem mensagens de erro em diversos idiomas.
Agora sim, para alterar a mensagem de erro padrão e deixa-la da forma que mais gostar basta editar o arquivo:
[root@CentOS6 error]# vim HTTP_NOT_FOUND.html.var
Procure dentro deste arquivo pelo trecho com o idioma desejado, neste caso “pt-br” e divirta-se personalizando a mensagen, neste caso o erro 404.
Após isso para que as configurações realizadas entre em vigor reinicie o apache:
[root@CentOS6 ~]# /etc/init.d/httpd restart
E pode começar a testar suas mensagens de erro personalizadas.



Legal o post pabéns!! só que na hora de editar o apache ou seja o httpd.conf o correto não seria utilizar outra porta que não seja a 80? afinal o varnish está respondendo qualquer requisição que chegue até a porta 80 utilizando o cache armazenado, se o apache continuar a responder requisições na porta 80 o varnish não teria nenhuma utilidade pois o apache ainda estaria fritando nas requisições.
No arquivo default.vcl é configurado o proxy reverso, então a porta definida em:
backend default {
.host = “127.0.0.1″;
.port = “80″;
}
será a porta que o apache vai estar respondendo, como foi definida a porta 80 o proxy reverso vai acabar requisitando o próprio varnish que está respondendo a porta 80.
abraço galera!