首页 > 解决方案 > 云端 + EC2 + PHP

问题描述

我目前正在从引用 ec2 中间层上的 php 服务器的 S3 存储桶运行 angular 8 应用程序,以从 RDS MySQL 数据库中提取数据。一切正常,但我需要确保 https 访问以确保安全,因此我在端点上添加了 Cloudfront 以将所有 http 请求转发到 https。它适用于静态内容的 S3 和 php,但是当向 php 调用提供查询字符串(在?之后)时,即使在 Cloudfront 的行为配置设置中指定“查询字符串转发”后,cloudfront 也会返回 502 错误。

例子...

abcdefg.cloudfront.net/api/get/getApplications.php 工作正常并返回所有应用程序的列表。

abcdefg.cloudfront.net/api/get/getApplications.php?ApplicationId=1应该返回一行,但在标题中有这个......

KEY             VALUE
Content-Type    text/html
Content-Length  1033
Connection      keep-alive
Server          CloudFront
Date            Fri, 24 Apr 2020 09:32:35 GMT
X-Cache         Error from cloudfront
Via             1.1 74e2a59e06d5b7556eb510403eacd42e.cloudfront.net (CloudFront)
X-Amz-Cf-Pop    LHR61-C2
X-Amz-Cf-Id     _yb_GEE24tZXcmohUcNwCqwT54FExprLfepS1R7-7kHLXXjLpHqTow==

只是为了清楚从源机器执行 php 工作正常。例如ec2-machine.eu-west-2.compute.amazonaws.com/api/get/getApplications.php?ApplicationId=1

在我搜索 AWS 文档和在线但找不到解决方案时,任何人都可以想到我可能遗漏的任何内容或建议替代方法吗?

谢谢

标签: phpamazon-web-servicesamazon-cloudfront

解决方案


在没有改变任何东西之后,php链接开始工作。如果修改了原始代码,云端配置似乎需要一些时间才能可用。

回答我自己的问题:)


推荐阅读