Terraform module to create http 302 redirection.
This module creates:
- a CloudFront distribution for all redirections
- a CloudFront function for all redirections
- an ACM certificate for all redirections
- route53 record for each domain
This module is available on terraform registry.
The Route53 zone must already exists.
This module needs 3 providers:
- aws - default provider for resources
- aws.route53 - Where route53 zones already exist
- aws.us-east-1 same account as
aws
, for acm certificate
This handle the use case where multiple aws accounts are used but it can be the same provider.
provider "aws" {
region = "eu-west-1"
}
provider "aws" {
alias = "us-east-1"
region = "us-east-1"
}
resource "aws_route53_zone" "neovops_io" {
name = "neovops.io"
}
module "http-redirect" {
source = "neovops/http-redirect/aws"
redirect_mapping = {
"www.neovops.io" = "neovops.io",
"docs.neovops.io" = "neovops.io/docs"
}
dns_zone = aws_route53_zone.neovops_io.name
providers = {
aws = aws
aws.route53 = aws
aws.us-east-1 = aws.us-east-1
}
}
Name | Version |
---|---|
terraform | >= 1.2.2 |
aws | ~> 5.15 |
Name | Version |
---|---|
aws | ~> 5.15 |
aws.route53 | ~> 5.15 |
aws.us-east-1 | ~> 5.15 |
No modules.
Name | Type |
---|---|
aws_acm_certificate.cert | resource |
aws_acm_certificate_validation.cert | resource |
aws_cloudfront_distribution.distribution | resource |
aws_cloudfront_function.redirect | resource |
aws_route53_record.cert_validation | resource |
aws_route53_record.main | resource |
aws_route53_zone.zone | data source |
Name | Description | Type | Default | Required |
---|---|---|---|---|
custom_certificate_domains | Custom certificate domains | list(string) |
[] |
no |
dns_zone | Route53 DNS zone name | string |
n/a | yes |
redirect_mapping | Redirect mapping | map(string) |
n/a | yes |
resources_name | Resources name. Necessary for multiple instances of this module | string |
"http-redirect" |
no |
No outputs.