问题标签 [bref]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
247 浏览

php - Serverless PHP slim framework POST does not get posted data

I have been exploring serverless php for and I opted on using slim framework because I find it easier to just plugin modules as I go and that what I am building is just landing pages with a few forms. So I have made the landing pages on slim framework and had it working on traditional servers like micro instances but when I migrated it on serverless php specifically using bref but the post method does not seem to work anymore.

I consume the API I made using slim + bref serverless via AJAX. I passed the contentType : application/json, with a POST method but still not working.

I have used the following methods:

  1. $request->getParsedBody() -> this works fine on a non-serverless framework. But on serverless php bref it went "internal server error"
  2. $_POST -> works fine locally and traditional servers but on cloudwatch and var_dumping it is empty array.
  3. $request->getParams() (not working no method of that is existing but I saw it here in Stackoverflow)

The work around I found was to have it on GET method but I actually want to use POST method because I'd like to use it on passwords.

Anyone who has experienced the same?

Thanks

0 投票
1 回答
2034 浏览

aws-lambda - 如何将命令行参数传递给 Serverless/Bref 中的 Lambda 函数?

我正在使用 Bref(使用无服务器)在 AWS Lambda 上运行 Symfony 4 (PHP) 应用程序。

Bref 为 Symfony 的 bin/console 二进制文件提供了一层。Lambda 函数的无服务器配置如下所示:

使用上述内容,我可以在 Lambdavendor/bin/bref cli mm-console -- mm:find-matches上运行。bin/console mm:find-matches

如果我想mm:find-matches在 Lambda 上按计划运行控制台命令怎么办?我试过这个:

但是“ bin/console mm:find-matches”不是有效的处理程序。如何按计划将mm:find-matches命令传递给bin/console函数?

0 投票
1 回答
191 浏览

php - AWS Lambda 和 Symfony Bref - 部署 Symfony 4 网站

感谢 AWS Lambda 和 Symfony Bref,我想部署我的 Symfony 4 网站,我遵循了这个文档:

但我有这个错误:

在此处输入图像描述

我的 serverless.yaml 文件:

请问是什么问题?

0 投票
1 回答
370 浏览

php - AWS 上的无服务器 PHP 与 bref 部署错误

我最近发现了什么有望成为 AWS Lambda 上 PHP 开发的圣杯。这是一个名为“bref”的工具,它简化了 PHP 应用程序部署到云的方式。

在线文档在此处提供了简单明了的说明: https ://bref.sh/docs/first-steps.html

不幸的是,部署(sls deploy)时出现以下错误:

此错误似乎表明缺少一些 npm 包,但 bref 网站上的文档没有解决要安装的任何其他包。我在这里做错了什么?

0 投票
3 回答
2187 浏览

amazon-s3 - 使用 S3 存储桶为资产提供服务的无服务器

我使用Bref ( https://bref.sh/ )。我尝试使用AWS S3配置serverless.yml文件,以存储 img、css、js 等资产。当我使用“无服务器部署”命令进行部署时,出现此错误:

发生错误:AssetsBucketPolicy - API: s3:PutBucketPolicy 访问被拒绝。

在我的 AWS 账户中,我拥有“AdministratorAccess”权限(https://www.youtube.com/watch?v=KngM5bfpttA&list=PL0_-jlAhLRgEcU0P0Ivi4OO844pgrzJOU&index=2&t=0s

策略管理员访问

我的 serverless.yml 文件是:

在 AWS S3 上,我尝试在存储桶上添加一个策略

我有一条消息,例如“拒绝访问”、“您无法授予公共访问权限,因为此帐户的阻止公共访问设置已打开。要确定哪些设置已打开,请检查您的阻止公共访问设置。” 为什么 ?

没看懂怎么配置?这个权限(AdministratorAccess)还不够?

谢谢!

0 投票
1 回答
138 浏览

php - PHP Serverless Slim 无法执行 imagettftext

我打算使用无服务器 php 函数来生成带有 TrueType 字体的图像。为了做到这一点,我选择了带有无服务器框架的brefcomposer

为了处理图像并包含文本,我使用imagettftextgd库中的函数。php -S localhost:8000 index.php我为本地测试目的而跑。效果很好,我得到了预期的输出图像。

因此,我运行 composer install --optimize-autoloader --no-dev然后serverless deploy创建了一个 AWS Lamda 函数。但是,当我调用已部署函数的端点时,它显示了一个Slim 应用程序错误- 没有任何细节:

发生网站错误。对暂时的不便深表歉意。

因此,我查看了 AWS Cloudwatch 日志并发现了以下错误消息:

消息:调用未定义的函数 imagettftext()

搜索此错误,我发现它通常与gd缺少库有关。然后我将phpinfo()本地测试与部署功能进行了比较。两者都gd安装了,不同的是本地的FreeType Support启用了。

您能帮我找到一种方法来FreeType Support为无服务器功能启用此功能吗?是否可以通过 要求这种支持composer.json

0 投票
3 回答
3437 浏览

php - 为什么 Bref 无法加载引导程序:“错误:找不到有效的引导程序:[/var/task/bootstrap /opt/bootstrap]”?

我正在研究如何使用bref库在 php 中创建 AWS lambda

因此,根据文档,我使用以下命令鸡尾酒设置了环境:

然后使用以下命令创建了我的第一个 php lambda:

我选择了PHP Function默认提供的第一个选项。创建以下创建index.php文件:

然后我把我的serverless.yml变成了:

我尝试通过以下命令启动它:

但我收到以下错误:

因此,我想问为什么我无法在本地运行我的 lambda?

0 投票
1 回答
979 浏览

aws-lambda - Amazon AWS Cognito Lambda 触发器无法使用简单的 PHP BREF 函数

我最近开始尝试使用 bref ( https://bref.sh/docs/ ) 包在 Amazon AWS 上将 PHP 用于 Lambda 函数。我可以很好地使用这个包来上传一个简单的 Lambda 函数,尽可能简单:

然后我使用这个 Lambda 函数并开始将它分配给 Cognito 触发器。它非常适合预注册触发器,当我从 Cognito 的管理面板创建新帐户时,完全没有问题。

但是,当我采用相同的确切触发器并将其添加到 Pre-authentication Cognito 触发器时,然后使用我在本地运行的一个简单 Symfony 应用程序对其进行测试,以作为使用 Cognito 的简单身份验证机制(使用本教程开发:https:// tech.mybuilder.com/managing-authentication-in-your-symfony-project-with-aws-cognito/),它立即返回错误:

当我禁用上面的 lambda 时,它立即开始工作而没有错误,所以问题不在于我的 Symfony 应用程序,它在某种程度上与 lambda 相关(即使它只是返回给定的事件并适用于其他触发器,如上所述) .

即使我用一个在 Node 中基本上等效的简单 lambda 替换它,它也能正常工作:

有谁知道为什么 PHP lambda 似乎无法与 Cognito Pre-authentication 触发器一起使用?如果可能的话,我更愿意在 PHP 中执行此操作。

0 投票
0 回答
524 浏览

php - 从 aws lambda 下载到 s3 存储桶后出现内部服务器错误,PHP

我使用 bref 基于 laravel 框架创建了 aws lambda 函数。链接:https ://bref.sh

这是我使用媒体库 spartie 下载的代码

我的配置是

当我在本地下载文件时一切正常,但是当我尝试在 lambda 函数中在 s3 上下载时出现错误:

我使用这个包 aws:

我的 serverless.yaml

我也为 s3 分配了角色,但我不知道这是怎么回事。

谢谢你 。

0 投票
0 回答
173 浏览

laravel - 无服务器 Laravel 部署问题

我已经创建了我的 larvel 应用程序并尝试将它部署在 AWS lambda 上,所以我为此使用了 bref 和无服务器框架,但是网站链接给了我空白页面,当我回到 cloudwatch 查看日志时,这就是存在的cloudwatch 日志

这是我的 serverless.yml

我不知道在哪里看,请有人帮助我