🌟
CloudFront Functions で www なしの URL を www 有りの URL にリダイレクトさせる
前提
- 以下のドメインを 1 つの CloudFront ディストリビューションにルーティングしている。
- www.example.com
- example.com
- S3 の Static Website Hosting は使用しない。
-
cloudfront.net.xxx
みたいなドメインは存在しない。
ソース
function handler(event) {
var request = event.request;
var host = request.headers.host.value;
var uri = request.uri;
if (!host.includes('cloudfront.net') && !host.startsWith('www')) {
return {
statusCode: 301,
statusDescription: 'Moved Permanently',
headers: { location: { value: `https://www.${host}${uri}` } },
};
}
return request;
}
Discussion