HttpOriginProps

class aws_cdk.aws_cloudfront_origins.HttpOriginProps(*, connection_attempts=None, connection_timeout=None, custom_headers=None, origin_shield_region=None, origin_path=None, http_port=None, https_port=None, keepalive_timeout=None, origin_ssl_protocols=None, protocol_policy=None, read_timeout=None)

Bases: OriginProps

Properties for an Origin backed by an S3 website-configured bucket, load balancer, or custom HTTP server.

Parameters:
  • connection_attempts (Union[int, float, None]) – The number of times that CloudFront attempts to connect to the origin; valid values are 1, 2, or 3 attempts. Default: 3

  • connection_timeout (Optional[Duration]) – The number of seconds that CloudFront waits when trying to establish a connection to the origin. Valid values are 1-10 seconds, inclusive. Default: Duration.seconds(10)

  • custom_headers (Optional[Mapping[str, str]]) – A list of HTTP header names and values that CloudFront adds to requests it sends to the origin. Default: {}

  • origin_shield_region (Optional[str]) – When you enable Origin Shield in the AWS Region that has the lowest latency to your origin, you can get better network performance. Default: - origin shield not enabled

  • origin_path (Optional[str]) – An optional path that CloudFront appends to the origin domain name when CloudFront requests content from the origin. Must begin, but not end, with ‘/’ (e.g., ‘/production/images’). Default: ‘/’

  • http_port (Union[int, float, None]) – The HTTP port that CloudFront uses to connect to the origin. Default: 80

  • https_port (Union[int, float, None]) – The HTTPS port that CloudFront uses to connect to the origin. Default: 443

  • keepalive_timeout (Optional[Duration]) – Specifies how long, in seconds, CloudFront persists its connection to the origin. The valid range is from 1 to 180 seconds, inclusive. Note that values over 60 seconds are possible only after a limit increase request for the origin response timeout quota has been approved in the target account; otherwise, values over 60 seconds will produce an error at deploy time. Default: Duration.seconds(5)

  • origin_ssl_protocols (Optional[Sequence[OriginSslPolicy]]) – The SSL versions to use when interacting with the origin. Default: OriginSslPolicy.TLS_V1_2

  • protocol_policy (Optional[OriginProtocolPolicy]) – Specifies the protocol (HTTP or HTTPS) that CloudFront uses to connect to the origin. Default: OriginProtocolPolicy.HTTPS_ONLY

  • read_timeout (Optional[Duration]) – Specifies how long, in seconds, CloudFront waits for a response from the origin, also known as the origin response timeout. The valid range is from 1 to 180 seconds, inclusive. Note that values over 60 seconds are possible only after a limit increase request for the origin response timeout quota has been approved in the target account; otherwise, values over 60 seconds will produce an error at deploy time. Default: Duration.seconds(30)

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_cloudfront as cloudfront
import aws_cdk.aws_cloudfront_origins as cloudfront_origins
import aws_cdk.core as cdk

http_origin_props = cloudfront_origins.HttpOriginProps(
    connection_attempts=123,
    connection_timeout=cdk.Duration.minutes(30),
    custom_headers={
        "custom_headers_key": "customHeaders"
    },
    http_port=123,
    https_port=123,
    keepalive_timeout=cdk.Duration.minutes(30),
    origin_path="originPath",
    origin_shield_region="originShieldRegion",
    origin_ssl_protocols=[cloudfront.OriginSslPolicy.SSL_V3],
    protocol_policy=cloudfront.OriginProtocolPolicy.HTTP_ONLY,
    read_timeout=cdk.Duration.minutes(30)
)

Attributes

connection_attempts

The number of times that CloudFront attempts to connect to the origin;

valid values are 1, 2, or 3 attempts.

Default:

3

connection_timeout

The number of seconds that CloudFront waits when trying to establish a connection to the origin.

Valid values are 1-10 seconds, inclusive.

Default:

Duration.seconds(10)

custom_headers

A list of HTTP header names and values that CloudFront adds to requests it sends to the origin.

Default:

{}

http_port

The HTTP port that CloudFront uses to connect to the origin.

Default:

80

https_port

The HTTPS port that CloudFront uses to connect to the origin.

Default:

443

keepalive_timeout

Specifies how long, in seconds, CloudFront persists its connection to the origin.

The valid range is from 1 to 180 seconds, inclusive.

Note that values over 60 seconds are possible only after a limit increase request for the origin response timeout quota has been approved in the target account; otherwise, values over 60 seconds will produce an error at deploy time.

Default:

Duration.seconds(5)

origin_path

An optional path that CloudFront appends to the origin domain name when CloudFront requests content from the origin.

Must begin, but not end, with ‘/’ (e.g., ‘/production/images’).

Default:

‘/’

origin_shield_region

When you enable Origin Shield in the AWS Region that has the lowest latency to your origin, you can get better network performance.

Default:
  • origin shield not enabled

See:

https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/origin-shield.html

origin_ssl_protocols

The SSL versions to use when interacting with the origin.

Default:

OriginSslPolicy.TLS_V1_2

protocol_policy

Specifies the protocol (HTTP or HTTPS) that CloudFront uses to connect to the origin.

Default:

OriginProtocolPolicy.HTTPS_ONLY

read_timeout

Specifies how long, in seconds, CloudFront waits for a response from the origin, also known as the origin response timeout.

The valid range is from 1 to 180 seconds, inclusive.

Note that values over 60 seconds are possible only after a limit increase request for the origin response timeout quota has been approved in the target account; otherwise, values over 60 seconds will produce an error at deploy time.

Default:

Duration.seconds(30)