Skip to content
v2.274.0

RedirectOptions Struct ​

Options for ListenerAction.redirect().

A URI consists of the following components: protocol://hostname:port/path?query. You must modify at least one of the following components to avoid a redirect loop: protocol, hostname, port, or path. Any components that you do not modify retain their original values.

You can reuse URI components using the following reserved keywords:

  • #{protocol}
  • #{host}
  • #{port}
  • #{path} (the leading "/" is removed)
  • #{query}

For example, you can change the path to "/new/#{path}", the hostname to "example.#{host}", or the query to "#{query}&value=xyz".

Example ​

ts
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_elasticloadbalancingv2 as elbv2 } from 'aws-cdk-lib';
const redirectOptions: elbv2.RedirectOptions = {
  host: 'host',
  path: 'path',
  permanent: false,
  port: 'port',
  protocol: 'protocol',
  query: 'query',
};

Properties ​

hostoptionalstringhostoptionalstrhostoptionalStringHostoptionalstringHostoptional*string#
The hostname.

Default: No change

This component is not percent-encoded. The hostname can contain #{host}.

pathoptionalstringpathoptionalstrpathoptionalStringPathoptionalstringPathoptional*string#
The absolute path, starting with the leading "/".

Default: No change

This component is not percent-encoded. The path can contain #{host}, #{path}, and #{port}.

permanentoptionalbooleanpermanentoptionalboolpermanentoptionalBooleanPermanentoptionalboolPermanentoptional*bool= false#
The HTTP redirect code.

The redirect is either permanent (HTTP 301) or temporary (HTTP 302).

portoptionalstringportoptionalstrportoptionalStringPortoptionalstringPortoptional*string#
The port.

Default: No change

You can specify a value from 1 to 65535 or #{port}.

protocoloptionalstringprotocoloptionalstrprotocoloptionalStringProtocoloptionalstringProtocoloptional*string#
The protocol.

Default: No change

You can specify HTTP, HTTPS, or #{protocol}. You can redirect HTTP to HTTP, HTTP to HTTPS, and HTTPS to HTTPS. You cannot redirect HTTPS to HTTP.

queryoptionalstringqueryoptionalstrqueryoptionalStringQueryoptionalstringQueryoptional*string#
The query parameters, URL-encoded when necessary, but not percent-encoded.

Default: No change

Do not include the leading "?", as it is automatically added. You can specify any of the reserved keywords.