如何将根域和子域指向Google云端存储桶?

时间:2014-12-28 17:07:35

标签: google-cloud-storage

我已成功创建了一个托管在Google云端存储上的静态网站。

存储桶名称如下:www.example.com

我的www的CNAME记录指向c.storage.googleapis.com

我已使用Google网站站长工具验证了www和root域名。

在Google网站站长工具上我将www设置为主域名(我不知道这是否相关,但在此处的另一篇文章中看到了它的引用)并且重要的是我从www子域服务该站点而不是根。

我可以很好地访问www.example.com,但无论我尝试使用我的根域,我只会收到<NoSuchBucket>错误。

信息点:我的DNS由Cloudflare管理。当我使用Github页面来托管静态站点时,我通常会将根指向具有CNAME记录的www(并且根本没有A记录,因为Cloudflare allows CNAME flattening),但这不起作用。

我尝试将我的根域指向带有CNAME记录的www并尝试将其指向c.storage.googleapis.com.

第2步的云存储网站配置documentation说:“For example, for example.com, the CNAME record contains the following information: www CNAME c.storage.googleapis.com”但未提及指向根域,但这必须是常见要求。

我意识到我可以使用根域创建一个额外的存储桶并将其指向http中的www,但似乎应该有一种方法可以使用DNS记录执行此操作。

4 个答案:

答案 0 :(得分:4)

您无法在Google存储方面将example.com根域指向www.example.com存储桶。唯一的选择是将DNS.com重定向/转发到www.example.com:

检查这些链接以便在Cloudflare上转发:

https://blog.cloudflare.com/introducing-pagerules-url-forwarding/

https://support.cloudflare.com/hc/en-us/articles/200172286-How-do-I-do-url-forwarding-with-CloudFlare-

答案 1 :(得分:1)

您无法使用与您的域/子域不同的网址访问您的存储桶。如果您想使用根域 http://yourdomain.com/的网址访问您的广告管理系统gs://www.yourdomain.com或其他方式,请访问Evenso。

因此,如果您选择使用gs://yourdomain.com的存储桶,则必须选择使用名为 root gs://www.yourdomain.com的存储桶或名为www的存储桶你的http://www.yourdomain.com/就好了documentation

但是,如果您希望使用根域http://yourdomain.com/的网址来访问您的存储分区gs://yourdomain.com,则需要将域的@记录设置为ALIAS/ANAME与CNAME指向c.storage.googleapis.com

时的子域名相同
  

您可能会发现通过@ Record指向根域的CNAME   您的域名提供商不支持。要离开这个,你可以   考虑将您的NAME SERVERS指向支持该服务的DNS提供商   ALIAS或ANAME。有关详细信息,请参阅this answer

您可以试用Google Cloud Storage (GCS),为Custom NameServers设置yourdomain.com并将其DNS Record设置为aliasc.storage.googleapis.com。将 your bucket 作为public-read投放,其名称与其TLDgs://yourdomain.com)相同。您可能会发现它的工作正常。

答案 2 :(得分:1)

我的解决方案是:   - 我创建了一个托管在Google云端存储上的静态网站,其桶名如下:www.mydomain.hu   - 在我的DNS提供商处为www添加了CNAME记录,该记录指向c.storage.googleapis.com   - 创建一个.htaccess文件,他跟随内容并上传到mydomain.hu/的根目录。

Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^mydomain\.hu
RewriteRule ^(.*)$ http://www.mydomain.hu/$1 [R=permanent,L]

如果您已有.htaccess文件,请将这四行代码插入文件的开头。

答案 3 :(得分:-1)

此解决方案是另一个堆栈交换站点为我工作的

  

1)使用CNAME记录将您的www.example.com设置为转发到真实的主机名。

     

2)要配置裸域,请添加“合成记录”,然后设置“子域转发”。在子域文本框中,输入@符号,然后不输入其他任何内容。

     

3)选择“前进路径”选项。那应该完全符合您的要求。

     

https://webmasters.stackexchange.com/questions/78481/forward-naked-domain-with-url-path-for-my-google-domain