Я использую бессерверную структуру для развертывания моих функций PHP на AWS Lambda. Я пробовал на простом примере, но внутри cloudwatch я вижу эту ошибку:
Handler `/var/task/public/test.hello` doesn't exist
Это мой бессерверный файл:
service: symfony-bref
provider:
name: aws
region: eu-central-1
runtime: provided
environment:
APP_ENV: prod
plugins:
- ./vendor/bref/bref
functions:
api:
handler: public/index.php
description: ''
timeout: 30 # in seconds (API Gateway has a timeout of 30 seconds)
layers:
- ${bref:layer.php-73-fpm}
events:
- http: 'ANY /'
- http: 'ANY /{proxy+}'
S3Handler:
handler: public/test.hello
layers:
- ${bref:layer.php-73}
events:
- s3:
bucket: ${ssm:/symfony-bref/AWS_S3_BUCKET_NAME:1}
event: s3:ObjectCreated:*
existing: true
а мои функции test.php находятся внутри общедоступной папки:
<?php
function hello($eventData) : array
{
return ["msg" => "hello from PHP " . PHP_VERSION];
}
Что я могу сделать для функции S3Handler? Функция API работает нормально.