0.0.74 • Published 4 years ago

@wheatstalk/cdk-cloudfront-rules v0.0.74

Weekly downloads
-
License
Apache-2.0
Repository
github
Last release
4 years ago

CDK CloudFront Rules

This CDK construct produces a CloudFront Function (not to be confused with Lambda @ Edge) that simplifies CloudFront-based URL rewriting and redirects.

Example

// Create a CloudFrontRules construct
const cloudFrontRules = new CloudFrontRules(scope, 'CloudFrontRules', {
  rules: [
    // Rewrite URIs matching /rewrite-* to /* using a capture group. (Think
    // Apache/.htaccess RewriteRule)
    Rule.rewriteRule({
      pattern: '^/rewrite-(.*)',
      location: '/$1',
    }),

    // Redirect /redirect-* to https://www.example.com/*
    Rule.rewriteRule({
      pattern: '^/redirect-(.*)',
      patternFlags: 'i', // case insensitive
      location: 'https://www.example.com/$1',
      redirectType: RedirectType.TEMPORARY,
    }),

    // Note: Rules are applied in the order they're provided. Rewrite rules
    // are applied while there has not yet been a redirect or matching
    // rewrite with the 'last' option.
    //
    // In this example, were you to visit a URI like
    // /rewrite-redirect-foobar, the first rule will rewrite you to
    // /redirect-foobar and then the second rule will match,
    // redirecting you to https://www.example.com/foobar
  ],
});

// Create your CloudFront distribution.
const distribution = new cloudfront.Distribution(scope, 'Distribution', {
  defaultBehavior: {
    origin: new cloudfront_origins.HttpOrigin('www.example.com', {
      protocolPolicy: cloudfront.OriginProtocolPolicy.HTTPS_ONLY,
    }),

    // Associate the produced function with VIEWER_REQUEST events.
    functionAssociations: [{
      eventType: cloudfront.FunctionEventType.VIEWER_REQUEST,
      function: cloudFrontRules.function,
    }],
  },
});
0.0.73

4 years ago

0.0.74

4 years ago

0.0.70

4 years ago

0.0.71

4 years ago

0.0.72

4 years ago

0.0.62

4 years ago

0.0.63

4 years ago

0.0.64

4 years ago

0.0.65

4 years ago

0.0.66

4 years ago

0.0.67

4 years ago

0.0.68

4 years ago

0.0.69

4 years ago

0.0.61

4 years ago

0.0.60

5 years ago

0.0.59

5 years ago

0.0.40

5 years ago

0.0.41

5 years ago

0.0.42

5 years ago

0.0.43

5 years ago

0.0.44

5 years ago

0.0.45

5 years ago

0.0.46

5 years ago

0.0.47

5 years ago

0.0.39

5 years ago

0.0.51

5 years ago

0.0.52

5 years ago

0.0.53

5 years ago

0.0.54

5 years ago

0.0.55

5 years ago

0.0.56

5 years ago

0.0.57

5 years ago

0.0.58

5 years ago

0.0.50

5 years ago

0.0.48

5 years ago

0.0.49

5 years ago

0.0.37

5 years ago

0.0.38

5 years ago

0.0.36

5 years ago

0.0.35

5 years ago

0.0.34

5 years ago

0.0.33

5 years ago

0.0.31

5 years ago

0.0.32

5 years ago

0.0.30

5 years ago

0.0.29

5 years ago

0.0.28

5 years ago

0.0.27

5 years ago

0.0.21

5 years ago

0.0.22

5 years ago

0.0.23

5 years ago

0.0.24

5 years ago

0.0.25

5 years ago

0.0.26

5 years ago

0.0.20

5 years ago

0.0.19

5 years ago

0.0.17

5 years ago

0.0.18

5 years ago

0.0.10

5 years ago

0.0.11

5 years ago

0.0.12

5 years ago

0.0.13

5 years ago

0.0.14

5 years ago

0.0.15

5 years ago

0.0.16

5 years ago

0.0.9

5 years ago

0.0.8

5 years ago

0.0.7

5 years ago

0.0.6

5 years ago

0.0.5

5 years ago

0.0.4

5 years ago

0.0.3

5 years ago

0.0.2

5 years ago

0.0.1

5 years ago

0.0.0

5 years ago