Custom Pages
Custom Pages é um recurso da Azion que permite personalizar páginas de erro para os usuários com base no código de status recebido de um Edge Connector.
Quando um usuário solicita conteúdo de uma edge application, a Azion envia a requisição para os servidores de origem utilizando o Edge Connector. Como resposta, o Edge Connector retorna um código de status HTTP, que indica se a requisição foi ou não concluída.
Com o Custom Pages, é possível customizar como sua aplicação irá tratar erros do tipo Cliente (4xx) e Servidor (5xx). Assim, quando uma requisição é feita para uma URL que não pode ser encontrada na origem ou quando o servidor não consegue responder, o usuário será redirecionado para uma página de erro personalizada, cujo conteúdo pode ser armazenado em cache.
Implementação
Escopo | Recurso |
---|---|
Primeiros passos com Edge Application | Primeiros passos |
Personalizando página de erro | Como personalizar uma página de resposta de erro |
Edge Connector | Referência do Edge Connector |
Workloads | Referência de Workloads |
API de Custom Pages | Referência da API |
Page Codes
O código que a Azion recebe do Edge Connector ao conectar na origem.
Estes são os códigos de status disponíveis:
Código de status | Descrição |
---|---|
400: Bad Request | Erro de requisição causado por parâmetros inválidos, parâmetros obrigatórios ausentes ou outros. |
401: Unauthorized | Erro resultante da ausência do cabeçalho HTTP Authentication . |
403: Forbidden | Falta de permissões do usuário para executar a operação. |
404: Not Found | O recurso solicitado não existe. |
405: Method Not Allowed | O método solicitado não pode ser aplicado à URL. |
406: Not Acceptable | O cabeçalho Accept não foi encontrado na requisição HTTP ou o cabeçalho contém conteúdo cujo formato ou versão não é suportado pela API. |
408: Request Timeout | O servidor informa que a requisição está chegando mais devagar do que o servidor está preparado para esperar. Isso significa que o servidor gostaria de encerrar a conexão. Essa resposta é frequentemente utilizada, pois alguns navegadores, como Chrome, Firefox 27+ ou IE9, usam pré-conexão HTTP para acelerar a navegação. Além disso, alguns servidores encerram a conexão sem enviar essa mensagem. |
409: Conflict | Conflito na execução da requisição, como a criação de um registro já existente. |
410: Gone | Essa resposta é enviada quando o conteúdo solicitado foi permanentemente removido do servidor, sem um endereço de redirecionamento definido. Se esse erro ocorrer, quaisquer caches ou links para esse recurso devem ser removidos. A especificação HTTP descreve que esse código deve ser usado para “serviços promocionais limitados”. APIs não devem ser feitas para indicar quais recursos foram removidos com esse código de status. |
411: Length Required | O servidor rejeitou a requisição porque o cabeçalho Content-Length está indefinido, mas é obrigatório para o servidor. |
414: URI Too Long | A URI solicitada é maior do que os limites do servidor. |
415: Unsupported Media Type | O formato de mídia dos dados solicitados não é suportado pelo servidor, por isso a requisição é rejeitada. |
416: Request Range Not Satisfiable | O valor especificado pelo cabeçalho Range não pôde ser atendido; provavelmente está fora do intervalo dos dados da URI de destino. |
426: Upgrade Required | O servidor se recusa a executar a requisição usando o protocolo atual, mas estará pronto para fazê-lo após o cliente atualizar para um protocolo diferente. O servidor envia um cabeçalho de resposta Upgrade para indicar os protocolos necessários. |
429: Too Many Requests | A requisição foi temporariamente rejeitada por exceder os limites de operação. O cliente deve aguardar até o momento definido no X-Ratelimit-Reset e tentar novamente. |
431: Request Header Fields Too Large | Os cabeçalhos da requisição são muito longos ou muitos cookies foram enviados na requisição. |
500: Internal Server Error | Erro não intencional, falha não identificada no processamento da requisição. |
501: Not Implemented | O método de requisição não é suportado pelo servidor e não pode ser modificado. Os únicos métodos obrigatórios para suporte dos servidores (e que, portanto, não devem retornar esse código) são GET e HEAD. |
502: Bad Gateway | Essa resposta de erro significa que o servidor, atuando como gateway para obter uma resposta necessária para manipular a requisição, obteve uma resposta inválida. |
503: Service Unavailable | O servidor não está pronto para lidar com a requisição. Causas comuns são servidor sobrecarregado ou em manutenção. Junto a essa resposta, uma página amigável explicando o problema deve ser enviada. Essas respostas devem ser usadas para condições temporárias e o cabeçalho Retry-After deve conter o tempo estimado para a recuperação do serviço. O webmaster também deve ter cuidado com os cabeçalhos de cache enviados com essa resposta, pois essas respostas de condição temporária normalmente não devem ser armazenadas em cache. |
504: Gateway Timeout | Essa resposta de erro é enviada quando o servidor está atuando como gateway e não obtém uma resposta a tempo. |
505: HTTP Version Not Supported | A versão HTTP utilizada na requisição não é suportada pelo servidor. |
Response TTL
Define o tempo, em segundos, que a página de erro permanecerá em cache antes de ser atualizada.
Saiba mais sobre configurações de expiração de cachePage Path (URI)
Este caminho especifica a URL interna da qual seu Edge Connector entrega o payload. Por exemplo, se você definir o caminho como /myerrors/505.html
e o endereço do seu Edge Connector for myconnector.azion.com
, o conteúdo será buscado e entregue a partir de myconnector.azion.com/myerrors/505.html
.
Response Custom Status Code
Código de status que será entregue ao usuário em vez do original. Por exemplo, você pode configurar a aplicação para retornar um código de resposta 404
quando ocorrer um erro 403
.