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

4 years ago

0.0.59

4 years ago

0.0.40

4 years ago

0.0.41

4 years ago

0.0.42

4 years ago

0.0.43

4 years ago

0.0.44

4 years ago

0.0.45

4 years ago

0.0.46

4 years ago

0.0.47

4 years ago

0.0.39

4 years ago

0.0.51

4 years ago

0.0.52

4 years ago

0.0.53

4 years ago

0.0.54

4 years ago

0.0.55

4 years ago

0.0.56

4 years ago

0.0.57

4 years ago

0.0.58

4 years ago

0.0.50

4 years ago

0.0.48

4 years ago

0.0.49

4 years ago

0.0.37

4 years ago

0.0.38

4 years ago

0.0.36

4 years ago

0.0.35

4 years ago

0.0.34

4 years ago

0.0.33

4 years ago

0.0.31

4 years ago

0.0.32

4 years ago

0.0.30

4 years ago

0.0.29

4 years ago

0.0.28

4 years ago

0.0.27

4 years ago

0.0.21

4 years ago

0.0.22

4 years ago

0.0.23

4 years ago

0.0.24

4 years ago

0.0.25

4 years ago

0.0.26

4 years ago

0.0.20

4 years ago

0.0.19

4 years ago

0.0.17

4 years ago

0.0.18

4 years ago

0.0.10

4 years ago

0.0.11

4 years ago

0.0.12

4 years ago

0.0.13

4 years ago

0.0.14

4 years ago

0.0.15

4 years ago

0.0.16

4 years ago

0.0.9

4 years ago

0.0.8

4 years ago

0.0.7

4 years ago

0.0.6

4 years ago

0.0.5

4 years ago

0.0.4

4 years ago

0.0.3

4 years ago

0.0.2

4 years ago

0.0.1

4 years ago

0.0.0

4 years ago