如何为Google Cloud Functions配置自定义域以呈现HTML

时间:2019-06-05 23:56:27

标签: google-cloud-platform dns google-cloud-functions custom-domain

所以我已经将Google Cloud Function部署到了这样的某个地方:

https://us-central1-my-project.cloudfunctions.net/my-function

我可以像这样成功渲染动态网页:

https://us-central1-my-project.cloudfunctions.net/my-function?slug=foo

现在,我想将其放在常规网址之后,使其工作如下:

https://my-domain.com/some-directory/foo

我希望它是 https 而不是http。并且请注意,我在some-directory子句的上方添加了foo,所以那里有一些重写逻辑。

所以基本上从这里到这里:

https://us-central1-my-project.cloudfunctions.net/my-function?slug=foo
https://my-domain.com/some-directory/foo

问题是如何执行此操作。想知道您是否可以指导我完成该操作,我认为这也会对将来的Google员工有所帮助。

当我搜索“用于Google云功能的自定义域”时,会得到this,它是用于“端点”或“ openapi”的,或者我不知道,但这似乎并不相关。但是,无论如何,我还是继续进行了更改,并更改了DNS名称服务器以使其符合他们的要求:

A     198.51.100.0
A     198.51.100.2
A     198.51.100.4
A     198.51.100.6
AAAA  2001:db8:ffff:32::15
AAAA  2001:db8:ffff:34::15
AAAA  2001:db8:ffff:36::15
AAAA  2001:db8:ffff:38::15

但是我不知道下一步该怎么做。不幸的是,与AWS相比,Google Cloud的文档简直一无是处。

This与我到目前为止所发现的内容非常接近,但还远远不能使其正常工作。也许this离我想要的东西更近。

2 个答案:

答案 0 :(得分:1)

使用在GCP项目中部署的Google Cloud Functions,这是不可能的。

当前,将自定义域映射到HTTP / S触发函数的唯一方法是使用Firebase FunctionsFirebase Hosting

创建自定义域后,您可以将域配置为handle HTTPS/S triggered functions

答案 1 :(得分:0)

实际上,可以将 Endpoints 用于云功能:

https://cloud.google.com/endpoints/docs/openapi/get-started-cloud-functions

在 Cloud Run 中运行 API 或函数后,您只需使用自定义域 (https://cloud.google.com/run/docs/mapping-custom-domains) 进行映射,并使用新主机重新部署 OpenApi 规范。