34

我们有一个网站:

www.feeltracker.com

这是在 Google App Engine 上运行的

在 Google App Engine 上,我们有裸域转发设置,因此:

http://feeltracker.com

重定向到

http://www.feeltracker.com

但是,当我们尝试在 Chrome 中打开以下地址时:

https://feeltracker.com(注意 HTTPS)

我们收到带有以下消息的 Google 错误页面:

Google
404. That’s an error.

The requested URL / was not found on this server. That’s all we know.

有谁知道我们如何确保https://feeltracker.com重定向到 www.feeltracker.com?

请注意,在 Firefox 中,我们在尝试打开https://feeltracker.com时会收到以下附加信息:

feeltracker.com uses an invalid security certificate.

The certificate is only valid for the following names:
*.google.com , *.android.com , *.appengine.google.com , *.cloud.google.com , *.google-analytics.com , *.google.ca , *.google.cl , *.google.co.in , *.google.co.jp , *.google.co.uk , *.google.com.ar , *.google.com.au , *.google.com.br , *.google.com.co , *.google.com.mx , *.google.com.tr , *.google.com.vn , *.google.de , *.google.es , *.google.fr , *.google.hu , *.google.it , *.google.nl , *.google.pl , *.google.pt , *.googleapis.cn , *.googlecommerce.com , *.gstatic.com , *.urchin.com , *.url.google.com , *.youtube-nocookie.com , *.youtube.com , *.youtubeeducation.com , *.ytimg.com , android.com , g.co , goo.gl , google-analytics.com , google.com , googlecommerce.com , urchin.com , youtu.be , youtube.com , youtubeeducation.com  

(Error code: ssl_error_bad_cert_domain)

请注意,我们将 Google App Engine 上的 SNI SSL 证书功能与我们上传的证书一起使用。当我们通过http://www.digicert.com/help/运行 SSL 诊断时,我们会得到以下信息:

Certificate does not match name feeltracker.com


Subject *.google.com
Valid from 02/Jul/2013 to 31/Oct/2013
Issuer  Google Internet Authority


Subject Google Internet Authority
Valid from 12/Dec/2012 to 31/Dec/2013
Issuer  Equifax

任何想法为什么https://feeltracker.com无法使用正确的证书,而 www.feeltracker.com 和http://www.feeltracker.com使用我们的 SSL 证书按预期工作?

4

5 回答 5

27

2015 年 9 月 16 日更新

看来这现在可以按照论坛帖子问题 10802 工作

以前适用的信息如下...


目前不支持。裸域重定向仅适用于 http,您可能会注意到需要将特定 IP 地址放入 DNS 中,这与 ghs.googlehosted.com 的方法和 IP 地址不同。

这似乎表明它是谷歌基础设施的不同部分,他们还没有设法使它们保持一致或协同工作。我还没有看到有关他们何时解决此问题的任何详细信息,因此可能需要等待很长时间。例如2009 年的相关帖子

裸域支持存在“已确认”问题,因此当该问题得到修复后,此问题可能也已解决。

由于谷歌不会在他们的裸域重定向器上正确地提供您的证书,所以现在我看到了以下选项:

  • 制作/提供您自己的反向代理(Apache httpd、varnish 等)或使用反向代理服务(例如CloudFlare)并将您的裸域指向那里。您将 SSL 安装在反向代理上,客户端将在那里连接到您的裸域(没有证书错误),您会将所有流量代理到您的真实站点。它可能会产生单点故障和成本,具体取决于您使用的内容。

  • 租一个便宜的 VPS 来安装 Web 服务器、证书和重定向脚本到https://www.feeltracker.com。在 DNS 中,将您的裸域映射到该服务器。它可以是一个非常便宜的 linux 服务器,因为重定向的要求非常低。

  • 查找支持 https 并允许您上传证书的域重定向服务。可悲的是,我什么都不知道。

  • 使用VIP(虚拟 IP)SSL 并在 DNS 中为您的裸域配置它。我没有测试过自己,但它似乎应该可以工作,尽管我确实在这里找到了一个旧评论,它可能不会。有人测试过吗?注意但是据我所见,DNS 条目的 TTL 仅为 300(5 分钟)并且 Google 不建议这样做,因此即使它确实有效,您也可能需要一些脚本来更新您的 DNS 条目,因为很有可能它不时变化。如果它确实有效,那么像DNSSimple这样的 DNS 提供商有一个 API,所以它是可能的。

可能第二个选项最适用于您的情况,因为您似乎并不介意裸域(这对许多人来说是一个问题)。

我最近发现了一个很好的例子:https ://khanacademy.org/他们似乎按照上面的第二个选项使用 Amazon EC2 主机。

https://khanacademy.org/ Resolving khanacademy.org... 107.20.223.238 
Connecting to khanacademy.org|107.20.223.238|:443... connected. 
WARNING: cannot verify khanacademy.org’s certificate, issued by “/C=US/ST=Arizona/L=Scottsdale/O=GoDaddy.com, Inc./OU=http://certificates.godaddy.com/repository/CN=Go Daddy Secure Certification Authority/serialNumber=07969287”:   Unable to locally verify the issuer’s authority. WARNING: certificate common name “*.khanacademy.org” doesn’t match requested host name “khanacademy.org”. 
HTTP request sent, awaiting response... 301 Moved
Permanently Location: https://www.khanacademy.org/ [following]
https://www.khanacademy.org/ Resolving www.khanacademy.org... 
72.14.249.132 Connecting to www.khanacademy.org|72.14.249.132|:443... connected. 

whois 107.20.223.238
OrgName:        Amazon.com, Inc.
OrgId:          AMAZO-4
Address:        Amazon Web Services, Elastic Compute Cloud, EC2

截至 2014 年 4 月 12 日,Google 似乎取得了一些进展,现在允许映射非 Google Apps 域(请参阅问题 8517),尽管 SSL 似乎还不适用于该方法(有关跟踪,请参阅问题 10794)。

于 2013-10-30T11:50:28.313 回答
8

我发现最好的免费 SSL 重定向服务是CloudFlare。让它工作:

  1. 添加您的域并将您的名称服务器切换到 CloudFlare(注册过程将引导您完成它)
  2. 一旦添加转到 CloudFlare 设置并下到 SSL。将设置更改为“完整 SSL(严格)”,这要求您在重定向到的子域上拥有有效证书(SNI 工作正常)。
  3. 返回您的网站列表,再次选择域并在选项转到页面规则上。https://yourdomain.com/*添加重定向到(将 www 替换为任何子域)的“转发”规则,https://www.yourdomain.com/$1确保重定向设置为 301。
  4. 保存您的设置并坐下来等待一切传播。

完毕。为您的裸域提供免费且安全的 SSL 重定向。

于 2015-02-05T09:37:46.410 回答
1

GAE 不正式支持裸域。您所看到的是 GAE 的限制,您没有做错任何事情。 https://developers.google.com/appengine/kb/general#naked_domain

于 2013-07-12T12:32:11.953 回答
1

显然不支持 HTTPS 上的裸域重定向。官方文档中没有提到这一点。如果您查看支持文档,您会在屏幕截图中看到裸重定向明确指出http://

从 Google Groups 线程来看,SSL 裸域重定向是不可能的:herehere

于 2013-10-28T21:17:16.330 回答
1

我不得不将我的域管理和域名服务器从 GoDaddy(G-Suite) 切换到 Cloudflare 来解决这个裸域重定向问题。我按照 Parkers 的说明使用了免费的 Cloudflare 帐户,在我关闭重定向规则然后重新打开后它就可以工作了。我从 Full(strict) 切换回 Full,因为您现在需要付费才能上传自己的 SSL 证书。我暂时对来自 Cloudflare 的共享通用 SSL 证书感到满意。

于 2018-12-30T08:06:42.227 回答