Este exemplo demonstra a reescrita do caminho especificado num pedido para um Application Load Balancer clássico.
Para configurar a gestão de tráfego para balanceadores de carga de aplicações externos globais e balanceadores de carga de aplicações externos regionais, consulte as seguintes páginas:
- Configurar a gestão de tráfego para o balanceador de carga de aplicações externo global
- Configurar a gestão de tráfego para o balanceador de carga de aplicações externo regional
Antes de começar
- Leia acerca das reescritas de URLs. 
- Leia acerca dos mapas de URLs em geral e, em particular, dos correspondentes de caminhos. 
- O exemplo de reescrita de URL pressupõe que já criou o seu balanceador de carga da aplicação externo seguindo os passos descritos no artigo Configurar um balanceador de carga com contentores do Cloud Storage. - Esse exemplo explica a criação de dois recursos: - http://IP_ADDRESS/never-fetch/three-cats.jpg
- http://IP_ADDRESS/love-to-fetch/two-dogs.jpg
 - Onde - /never-fetch/three-cats.jpgestá armazenado em- /cats, que é o serviço predefinido, e- /love-to-fetch/two-dogs.jpgestá armazenado em- /dogs.- Neste ponto, o mapa de URLs tem o seguinte aspeto: - gcloud compute url-maps describe http-lb - creationTimestamp: '2020-10-13T11:18:10.561-07:00' defaultService: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendBuckets/cats fingerprint: MKfYsObzqgw= hostRules: - hosts: - '*' pathMatcher: path-matcher-1 id: '1420501688756228493' kind: compute#urlMap name: test-bucket pathMatchers: - defaultService: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendBuckets/cats name: path-matcher-1 pathRules: - paths: - /love-to-fetch/* service: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendBuckets/dogs selfLink: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/urlMaps/http-lb
Modificar o mapa de URLs
Neste exemplo, reescreve o URL /love-to-fetch/ para que os utilizadores possam aceder à imagem two-dogs.jpg com este URL simplificado:
- http://IP_ADDRESS/two-dogs.jpg
Para tal, modifique o mapa de URLs do balanceador de carga da seguinte forma:
Consola
Edite o seu equilibrador de carga
- Aceda à página Balanceamento de carga na Google Cloud consola. 
 Aceda à página Balanceamento de carga
- Clique em http-lb.
- Clique em Editar .
- Mantenha a janela aberta para continuar.
Altere as regras de anfitrião e caminho
- Na coluna do lado esquerdo do ecrã, clique em Regras de anfitrião e caminho.
- Selecione Regra avançada de anfitrião e caminho (redirecionamento de URL, reescrita de URL).
- Clique na linha que contém a regra de caminho não predefinida, neste caso, a linha que tem um asterisco (*) para todos os anfitriões.
- Clique no ícone de lápis  na linha
/love-to-fetch/* Route traffic to a single backend: dogs.
- Em Caminhos, elimine /love-to-fetch/*e adicione/*.
- Em Ação, selecione Encaminhar tráfego para um único back-end.
- Clique em Ação do suplemento (reescrita do URL).
- Deixe a opção Reescrita do anfitrião em branco.
- Em Reescrita do prefixo do caminho, introduza /love-to-fetch/.
- Em Backend, selecione dogs.
- Clique em Guardar.
- Clique em Concluído. A nova regra de anfitrião e caminho tem o seguinte aspeto: - Caminhos - Ação - Back-end - Qualquer não correspondência (predefinição) - Encaminhe tráfego para um único back-end - gatos - /* - Encaminhe tráfego para um único back-end - cães 
- Se tudo parecer correto, clique em Atualizar para atualizar o seu equilibrador de carga HTTP. 
gcloud
- Crie um ficheiro YAML - /tmp/http-lb.yaml, certificando-se de que substitui PROJECT_ID pelo ID do seu projeto.- Quando um utilizador pede o caminho - /*, o caminho é reescrito no back-end para a localização real do conteúdo, que é- /love-to-fetch/*.- defaultService: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendBuckets/cats hostRules: - hosts: - '*' pathMatcher: path-matcher-1 name: http-lb pathMatchers: - defaultService: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendBuckets/cats name: path-matcher-1 pathRules: - paths: - /* routeAction: urlRewrite: pathPrefixRewrite: /love-to-fetch/ service: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendBuckets/dogs tests: - description: Test routing to backend bucket, dogs host: example.com path: /love-to-fetch/test service: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendBuckets/dogs
- Valide o mapa de URLs. - gcloud compute url-maps validate --source /tmp/http-lb.yaml - Se os testes forem aprovados e o comando gerar uma mensagem de êxito, guarde as alterações no mapa de URLs. 
- Atualize o mapa de URLs. - gcloud compute url-maps import http-lb \ --source /tmp/http-lb.yaml \ --global 
Testes
Tome nota do endereço IPv4 que foi reservado:
gcloud compute addresses describe example-ip \
    --format="get(address)" \
    --global
Depois de aguardar vários minutos para que as alterações se propaguem, pode testar esta configuração.
Na linha de comandos, execute o seguinte comando curl:
curl http://IP_ADDRESS/two-dogs.jpg
Num navegador, abra http://IP_ADDRESS/two-dogs.jpg.