Coporate site RenewalでのCloudFront Functions

さて、株式会社ゴーズウェルも2021年9月で11年目。

そろそろ、本気出した方がいいのかなと思う今日この頃。

で、Coporate siteをRenewal中。

株式会社ゴーズウェル│Goeswell Co., Ltd.

株式会社ゴーズウェルのコーポレートサイト。

CloudFront+S3でSubDirectoryでindex.htmlが補完されない問題を解決したという話です。

CloudFront Functions

Lambda@Edgeのように、CloudFront(Edge)で何かしらの処理をするもの。

Introducing CloudFront Functions – Run Your Code at the Edge with Low Latency at Any Scale | Amazon Web Services

With Amazon CloudFront, you can securely deliver data, videos, applications, and APIs to your customers globally with low latency and high transfer speeds. To offer a customized experience and the lowest possible latency, many modern applications execute some form of logic at the edge. The use cases for applying logic at the edge can be […]

に記載してあるけど、

  • Excecution timeが「Less than 1 ms」にある通り、とにかく高速な処理が必要なので、複雑な処理はできない。
  • Memoryが「2MB」とある通り、そんな大容量の処理ができない。

ってことで・・・例としては、

Add index.html to request URLs that don’t include a file name

The following example function appends index.html to requests that don’t include a file name or extension in the URL. This function can be useful for single page applications or statically generated websites that are hosted in an Amazon S3 bucket. This is a viewer request function. See this example on GitHub .

CloudFront+S3で作ってる場合に、サブディレクトリでindex.htmlが補完されなくて困って、Lambda@Edgeを使ってた人もこれを使えばものの数分で対応完了。

EmailJSであったり、JS組み込みで色々できる時代にもなってきていて、ますますサーバレスが加速していくのかなと思っているのです。

Send email from Javascript – no server code required | EmailJS

Send email directly from your client-side Javascript code – no server side code required. Add static or dynamic attachments, dynamic parameters, captcha code and more. Start with our free tier!