Utilize o Terraform para configurar regras de reescrita de URL que transformam caminhos de solicitação e strings de consulta em um site ESA.
Instale o Terraform e configure permissões
Instale e configure o Terraform no seu computador
Para obter mais informações sobre como usar o Terraform no seu computador, consulte Instale e configure o Terraform.
Crie um par de AccessKey para um usuário RAM. Uma conta Alibaba Cloud possui todas as permissões sobre os recursos. Caso o par de AccessKey da sua conta Alibaba Cloud seja comprometido, seus recursos ficarão expostos a grandes riscos. Recomendamos o uso do par de AccessKey de um usuário RAM. Para mais detalhes, veja Crie um AccessKey.
-
Crie variáveis de ambiente para armazenar as credenciais de identidade.
É possível criar e visualizar seu AccessKey na página AccessKey Management.
Se as variáveis de ambiente não estiverem configuradas, a verificação de identidade falhará durante a execução do modelo do Terraform.
Usar um serviço online (sem necessidade de instalação ou configuração de permissões)
Caso prefira não instalar o Terraform, utilize o serviço online Cloud Shell.
O Alibaba Cloud Cloud Shell é um produto gratuito de operações e manutenção (O&M). Ele já vem com componentes do Terraform pré-instalados e credenciais de identidade configuradas, permitindo a execução direta de comandos do Terraform. Para saber mais, consulte Crie recursos com o Terraform.
Ao utilizar o Terraform no Cloud Shell, o recurso de destruição pode causar perda de dados. Recomendamos usar o Cloud Shell apenas para operações simples e rápidas, como depuração. Para mais informações sobre as limitações, veja Limites.
Recursos
Consultar informações do site: alicloud_esa_sites (fonte de dados para referenciar um site existente)
Configure uma regra de reescrita de URL: alicloud_esa_rewrite_url_rule
Configure uma regra de reescrita de URL
-
Crie um arquivo
main.tfcom o código abaixo para definir uma regra de reescrita de URL para o seu site.# 1. Query information about an existing site.data "alicloud_esa_sites" "default" {
site_name = "{{DOMAIN}}" # Replace with the domain name of your site that has been added to Edge Security Acceleration, such as example.com.
}
2. Configure the URL rewrite: Rewrite paths that start with /images/ to /static/img/ and remove all query parameters.
resource "alicloud_esa_rewrite_url_rule" "example" {
site_id = data.alicloud_esa_sites.default.sites[0].site_id
rule_name = "rewrite-images-prefix"
rule_enable = "on"
rule = "starts_with(http.request.uri.path, \"/images/\")"
rewrite_uri_type = "dynamic"
uri = "regex_replace(http.request.uri.path, \"^/images/\", \"/static/img/\")"
rewrite_query_string_type = "static"
query_string = "" # An empty string indicates that all query parameters are removed.
}
-
Acesse o diretório que contém seus arquivos de configuração e execute o comando a seguir para inicializar o ambiente do Terraform.
terraform init -
Execute o comando abaixo para validar a sintaxe e a configuração do Terraform.
terraform validate -
Execute o seguinte comando para visualizar o plano de execução.
terraform plan -
Aplique a configuração executando o comando a seguir.
terraform apply Quando solicitado, insira
yespara confirmar e aplicar as alterações.
Verifique o resultado
Execute terraform show
No seu diretório de trabalho, execute o comando abaixo para visualizar os recursos criados:
terraform show
Verifique no console
No console do ESA, selecione Site Management e, na coluna Website, clique em no site desejado.
No painel de navegação à esquerda, escolha .
(Opcional) Limpar recursos
Quando esses recursos não forem mais necessários, execute o comando terraform destroy.
terraform destroy
Referências
O parâmetro rewrite_uri_type
Valores válidos para o parâmetro rewrite_uri_type no recurso alicloud_esa_rewrite_url_rule:
|
Valor |
Descrição |
Detalhes |
|
|
Estático |
Reescreve o caminho para um destino fixo. |
|
|
Dinâmico |
Utiliza uma expressão para calcular dinamicamente o caminho de destino. |
O parâmetro rewrite_query_string_type
Valores aceitos pelo parâmetro rewrite_query_string_type:
|
Valor |
Descrição |
Detalhes |
|
|
Estático |
Substitui a string de consulta pelo valor fixo definido em |
|
|
Dinâmico |
Gera a string de consulta dinamicamente por meio de uma expressão. |