Configure portas HTTP e HTTPS
Escolha as portas HTTP e HTTPS em que um workload escuta e envie cada porta para uma porta de origem pelo Azion Console, pela Azion CLI ou pela API.
Você pode escolher as portas em que um workload escuta para HTTP e HTTPS e enviar as requisições de cada porta para uma porta de origem pelo Azion Console, pela Azion CLI ou pela API. Para a versão de TLS e o conjunto de cifras das portas HTTPS, consulte Defina o conjunto de cifras TLS.
Duas portas participam de toda requisição. A porta de entrega é a porta à qual seus usuários se conectam, e o workload a define. A porta de origem é a porta à qual a Azion se conecta na sua origem, e o connector da aplicação a define. Cada uma tem um padrão, 80 para HTTP e 443 para HTTPS, e você pode alterar uma sem alterar a outra.
Esta tabela mostra as combinações, com uma requisição de exemplo e a configuração que cada uma altera:
| Combinação | URL de origem | URL de entrega | O que alterar |
|---|---|---|---|
| Porta de origem padrão, porta de entrega padrão | https://origin.example.com:443 | https://www.example.com:443 | Nada |
| Porta de origem padrão, protocolo diferente do da porta de entrega | http://origin.example.com:80 | https://www.example.com:443 | A política de protocolo do connector |
| Porta de origem padrão, porta de entrega personalizada | http://origin.example.com:80 | http://www.example.com:8080 | As portas do workload |
| Porta de origem personalizada, porta de entrega padrão | https://origin.example.com:9443 | https://www.example.com:443 | As portas do connector |
| Porta de origem personalizada, porta de entrega personalizada | https://origin.example.com:8443 | https://www.example.com:9443 | As portas do workload e do connector, e uma regra por porta de entrega personalizada |
Uma conta que roda na API v3 define as portas de entrega na aplicação. Para mais informações, consulte Main Settings e Migração para API v4.
Pré-requisitos
Console
- Um workload cujo deployment nomeia uma aplicação. Para criar os dois, consulte Primeiros passos com Workloads.
- Para uma porta de origem personalizada, um connector para a sua origem que as regras da aplicação possam nomear. Para criar um connector e uma regra, consulte Primeiros passos com Applications.
- Acesso ao Azion Console. Para mais informações, consulte Como acessar o Azion Console.
Defina as portas em que o workload escuta
As portas HTTP e HTTPS de um workload são duas listas no objeto protocols.http dele. As portas HTTP vêm de quatro valores: 80, 8008, 8080 e 8880. As portas HTTPS vêm de doze: 443, 8443, 9440, 9441, 9442, 9443, 7777, 8888, 9553, 9653, 8035 e 8090. Um workload novo escuta em 80 e 443.
Console
Para definir as portas no Azion Console:
Acesse Azion Console > Workloads.
Selecione o workload que atende a aplicação. O formulário de edição dele abre.
Na seção Protocol Settings, selecione em HTTP Ports cada porta em que o workload escuta para HTTP.
Com HTTPS support ativado, selecione em HTTPS Ports cada porta em que o workload escuta para HTTPS.
Selecione Save.
Azion Console mostra “Your workload has been updated”, e a seção Protocol Settings lista as portas que você selecionou.
Duas recusas impedem a alteração. Uma porta HTTP fora dos quatro valores é recusada com Invalid choices for multiple choices field: [80, 8008, 8080, 8880]. Uma lista versions que contém http3 sem http1 e http2 é recusada com Missing required choices for multiple choices field: ['http1', 'http2']. Para cada recusa e a correção dela, consulte Configurações de workload.
Uma alteração de workload leva vários minutos para chegar a toda a infraestrutura distribuída da Azion, e as requisições podem receber as portas antigas ou as novas nesse intervalo. Repita uma requisição até que as respostas coincidam.
Defina a porta de origem no connector
A porta de origem pertence ao connector que uma regra da aplicação nomeia, não ao workload. Cada endereço de um connector carrega duas portas de origem: http_port, 80 por padrão, e https_port, 443 por padrão. Para uma origem que escuta em outra porta, defina essa porta no endereço ao criar ou editar o connector.
O transport_policy do connector decide se a Azion se conecta à origem por HTTP ou por HTTPS. Por exemplo, force_https faz toda conexão com a origem usar HTTPS, qualquer que seja o protocolo da requisição do usuário. Para cada política e o protocolo que ela usa, consulte Configurações de connector.
Quando duas portas de entrega precisam de portas de origem diferentes, crie um connector por porta de origem. Depois, encaminhe cada porta de entrega para o connector dela com uma regra, como mostra Encaminhe uma porta personalizada para o connector dela.
Encaminhe uma porta personalizada para o connector dela
Uma regra na aplicação pode enviar as requisições de uma porta de entrega para o connector de uma porta de origem. A regra roda na fase de requisição. O critério dela compara ${server_port}, a porta do servidor que recebe a requisição, com a porta de entrega. O behavior dela, Set Connector, nomeia o connector. Para as variáveis e o comportamento, consulte Rules Engine para Applications.
Este exemplo envia as requisições que chegam na porta de entrega 8080 para um connector cujo endereço usa a porta de origem que você quer.
Console
Para criar a regra no Azion Console:
Acesse Azion Console > Applications e selecione a aplicação do deployment do workload.
Em General, digite route-port-8080 como Name.
Em Phase, selecione Request Phase.
Em Criteria, selecione a variável ${server_port} e o operador is_equal, e digite 8080 como argumento.
Em Behaviors, selecione Set Connector.
Em Connector, selecione o connector cujo endereço usa a porta de origem para 8080.
A regra aparece na aba Rules Engine, sob o título Request.
Assim que a regra se propaga, uma requisição que chega na porta de entrega 8080 alcança a sua origem na porta do connector que a regra nomeia. Para cada outra porta de entrega personalizada, crie mais uma regra com essa porta como argumento e o connector dela.
Defina as portas em uma aplicação v3
Uma conta que opera na API v3 não tem workloads nem connectors. As portas de entrega pertencem às Main Settings da aplicação, e a porta de origem pertence à origin dela. Para saber qual modelo sua conta usa, consulte Verifique a migração da sua conta.
As duas metades ficam na mesma aplicação, em duas abas. Para definir no Azion Console:
Acesse Azion Console > Applications > sua aplicação.
Na aba Origins, selecione a origin padrão ou adicione uma.
Mantenha Preserve HTTP/HTTPS protocol selecionado para alcançar a origin no protocolo da requisição. Em Protocol Policy, Enforce HTTP ou Enforce HTTPS envia toda requisição naquele protocolo, qualquer que seja o pedido do usuário.
Em Address, informe o hostname da sua origin. Para uma porta diferente da padrão do protocolo, acrescente a notação host:port. Por exemplo: yourorigin.com:8443.
Selecione Save.
Na aba Main Settings, selecione as portas HTTP e HTTPS que a aplicação atende. Uma aplicação entregue apenas em HTTP oferece a porta 80. Ativar o suporte a HTTPS acrescenta a porta 443 e torna as portas personalizadas selecionáveis ao lado delas.
Selecione Save.
As duas configurações são independentes. A porta em Address é aquela a que a Azion se conecta na sua origin. As portas em Main Settings são aquelas a que os usuários se conectam. Para cada campo das duas abas, consulte Main Settings | v3 e Origins.