要为一个自包含的lambda@edge函数创建一个没有原点的CloudFront发行版,可以按照以下步骤进行操作:
- 登录腾讯云控制台,进入云产品列表,选择云函数(Serverless Cloud Function)服务。
- 在云函数控制台,点击左侧菜单栏的“函数服务”,然后点击“新建”按钮。
- 在创建函数页面,填写函数名称、选择运行环境为“Node.js 12.16”(lambda@edge目前只支持Node.js运行环境),选择触发器为“API网关触发器”。
- 在函数代码编辑器中,编写自包含的lambda@edge函数代码。lambda@edge函数是在CloudFront边缘节点上执行的,用于对请求和响应进行处理和转换。
- 在触发器配置中,选择API网关触发器的API类型为“云函数API”,选择API网关的地域和可用区。
- 点击“高级配置”,在“函数配置”中,选择“自定义命名空间”,填写命名空间名称。
- 点击“完成”按钮,等待函数创建完成。
- 在云函数控制台,找到刚创建的函数,点击函数名称进入函数详情页。
- 在函数详情页,复制函数的API网关访问路径(Endpoint),该路径将作为CloudFront发行版的自定义域名。
- 登录腾讯云控制台,进入云产品列表,选择云内容分发网络(CloudFront)服务。
- 在CloudFront控制台,点击左侧菜单栏的“分发列表”,然后点击“创建分发”按钮。
- 在创建分发页面,选择分发配置为“Web”,点击“继续”按钮。
- 在源站配置中,选择“自定义源”选项,然后点击“添加自定义源”按钮。
- 在自定义源配置中,填写自定义源的域名为刚才复制的函数API网关访问路径,选择协议为“HTTP”,点击“确定”按钮。
- 在分发配置中,选择“自定义域名”选项,填写自定义域名,选择证书类型为“自定义证书”,上传或选择已有的SSL证书。
- 在高级配置中,选择“Lambda@Edge”选项,点击“添加Lambda@Edge”按钮。
- 在Lambda@Edge配置中,选择“自定义函数”选项,填写函数名称为刚才创建的lambda@edge函数名称,选择事件类型为“Viewer请求”,点击“确定”按钮。
- 点击“下一步”按钮,完成其他配置项的设置,然后点击“创建”按钮。
- 等待CloudFront发行版创建完成,获取分发域名。
通过以上步骤,就可以成功为一个自包含的lambda@edge函数创建一个没有原点的CloudFront发行版。用户可以通过访问CloudFront分发域名来触发lambda@edge函数的执行,并实现自定义的请求和响应处理逻辑。