Google App Engine将所有裸域请求重定向,导致letsencrypt无法工作。

4
我有一个 GAE 应用程序和在 enom.com 注册的自定义域。该应用程序是由 app.yaml 配置的静态网站。
我正在尝试使用 LetsEncrypt 证书进行 SSL,因此我希望 www.example.com 和 example.com 都有有效的证书。我可以很好地为 www.example.com 获取证书。
然而,问题出在我的裸域名上。每当一个 HTTP 请求到达 http://example.com/,它会被重定向到 http://www.example.com/。但是,如果一个 HTTP 请求到达例如 http://example.com/a.html,请求仍然被重定向到 http://www.example.com/。因此,当 LE 服务器寻找他们的 well-known acme-challenge 时,它会失败,因为他们看到的是 index.html。

我猜这不是一个普遍的行为,因为没有人提到过这个问题,无论是在https://code.google.com/p/googleappengine/issues/detail?id=10802还是在https://github.com/certbot/certbot/issues/1480

我试图深入挖掘为什么会发生这种情况,我能看到的一个错误是在这里: already mapped to a project

如果我选择覆盖,GAE会说它“无法插入映射”

整个项目都是由另一个人开始的,他声称不知道example.com被分配到任何其他地方。我查看了他的Google Cloud控制台,似乎他是正确的。

也许有趣的是,在admin.google.com的域页面上,裸域重定向已经设置好了。它将example.com重定向到www.example.com。我没有找到禁用它的方法。

在我的DNS注册商中,我已经输入了四个A记录、四个AAAA记录和一个CNAME的www
简而言之:我的LetsEncrypt acme-challenge在我的裸域名上失败了,求帮助!

我今天刚遇到了这个问题 - 你能解决吗?我的裸域名总是重定向回example.com,就像你的一样。 - user1961
已经过了几年,我已经继续前进了,但据我所记,没有 :( 也许可以尝试krisrak的解决方案。 - aes
是的,我明白了。但是有没有比在SO上找到确切的问题而没有解决方案更糟糕的事情呢?太遗憾了,SEO对我来说起作用太好了,以至于我找不到这个。 - user1961
1个回答

1
在我登录Google Apps帐户并将example.com重定向到wwww.example.com后,我在app_engine中遇到了相同的错误。这之后,我遇到了“已映射”的错误。而且在Google Apps中没有撤销重定向的方式,所以我的猜测是Google Apps已经将其映射,因此App Engine无法修改或添加。我不得不向支持团队解释这个问题,顺便说一下,Google Apps支持是免费的,可以联系他们,然后被转移到App Engine支持团队。

没有办法自己修复,你必须打电话给Google支持并清楚地解释,他们可以重置。我被反弹了7次,直到找到一个理解这个问题并为我解决它的人。这持续了两周时间,每个人都把责任推卸给对方。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接