Am o distribuție CloudFront. Originea este o găleată S3 care utilizează OAI.
Am creat o funcție lambda@edge urmând instrucțiunile de la https://aws.amazon.com/blogs/compute/implementing-default-directory-indexes-in-amazon-s3-backed-amazon-cloudfront-origins-using-lambdaedge/
Practic, vreau ca funcția lambda@edge să redirecționeze adresele URL care se termină în / către /index.html. Acționând ca Apache DirectroyIndex.
Distribuția CloudFront funcționează pentru adrese URL fără cerința de redirecționare. Dar CloudFront nu pare să invoce funcția mea lamba@edge.
M-am asigurat că există o asociere corectă între distribuția CloudFront și versiunea funcției labda@edge.
Am făcut mai multe solicitări de testare:
curl -I https://www.sudheer.net/blog/
HTTP/2 403
tip de conținut: aplicație/xml
data: sâmbătă, 19 februarie 2022 14:35:38 GMT
server: AmazonS3
x-cache: eroare de la cloudfront
prin: 1.1 5d840d432727e3561fd1a3de915212ca.cloudfront.net (CloudFront)
x-amz-cf-pop: EWR53-C2
x-amz-cf-id: leub-Kgu4Bh9xH4Rn5o7bxs62B1NBO4ViEu6hv-_xtGG7DSQlBFEXw=
Primesc 403.Nu am găsit niciun jurnal lambda@edge în nicio regiune.
Care ar putea fi problema? Cum să o găsesc?
Funcția Lambda@Edge are principiile:
„Versiune”: „2012-10-17”,
"Afirmație": [
{
„Sid”: „”,
„Efect”: „Permite”,
„Principal”: {
„Serviciul”: [
„edgelambda.amazonaws.com”,
„lambda.amazonaws.com”
]
},
„Acțiune”: „sts:AssumeRole”
}
]
}