Cloud Front distribution managed by API Gateway

0

I am using a custom domain for my API, that I have deployed with the Serverless framework. I am aware that the AWS Console does not show a CloudFront distribution created by the Custom Domain name action.

The problem is that I am not taking advantage of caching for any API calls. The Response Header is always "x-cache: Miss from cloudfront".

Because I can't see the distribution in the console (or even through the CLI), there is no way I can review the caching configuration for it.

Does anybody have any clue on how to solve this problem / limitation?

Jean

已提问 4 年前758 查看次数
6 回答
0

Hello:

If you want to take advantage of CloudFront's edge cache, you will need to create your own distribution to change the settings. You will want to configure your domain as a Regional endpoint instead of an Edge-optimized one.

Regards,
Bob

专家
已回答 4 年前
0

Hello Bob, thanks for your response.

With the CloudFront distribution managed by API gateway, I have the domain of the API linked automatically with my custom domain.

If I create my own CloudFront distribution, I will have to link the API domain manually in the Cloud Front settings (Origin Domain Name). I am afraid that the API domain name can change after new deployments, breaking the access to it.

Is there a way to eliminate this risk?

Thank you very much.

Regards,
Jean

已回答 4 年前
0

Hello:

You can still use the custom domain feature in API Gateway to have a static endpoint that will not change no matter how many times you redeploy the underlying API. The key to this configuration is that you must configure the CloudFront distribution to pass through all headers (include the host header) when communicating with the origin. This is how the API Gateway distribution is configured behind the scenes.

Regards,
Bob

专家
已回答 4 年前
0

Hi Bob,

Thank you. It makes sense, I will try this configuration then.

Just one final question: in this case I will have 2 CloudFront distributions, right?
My custom CloudFront distribution -> (pointing to)
the CloudFront distribution managed by API gateway -> (pointing to)
the API original endpoint.

Regards,
Jean

已回答 4 年前
0

Jean:

No, as I mentioned in my original post, you'd want to set your domain to a Regional endpoint to remove the second CloudFront distribution.

Regards,
Bob

专家
已回答 4 年前
0

I see, Bob. Thank you very much for your help.

Regards,
Jean

已回答 4 年前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则