我已经成功地创建了一个托管在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 (因为Cloudflare allows CNAME flattening,根本没有A记录),但这在这里不起作用。
我已经尝试使用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记录来做到这一点。
发布于 2015-04-22 11:05:18
在Google Storage端,您无法将example.com根域指向www.example.com存储桶。唯一的选择是将example.com重定向/转发到您的DNS提供商上的www.example.com:
检查以下链接以在Cloudflare上进行转发:
https://blog.cloudflare.com/introducing-pagerules-url-forwarding/
发布于 2016-03-02 13:47:22
您无法使用与您的域/子域不同的url访问您的存储桶。甚至当你想访问的时候,使用你的根域的http://yourdomain.com/到你的存储桶gs://www.yourdomain.com或者相反的方式。
因此,您必须在此处选择使用名为根gs://yourdomain.com的存储桶或名为gs://www.yourdomain.com的存储桶,如果您使用http://www.yourdomain.com/选择www存储桶,则可以按照documentation上的说明进行选择。
但是,如果您更喜欢使用根域http://yourdomain.com/的url来访问您的存储桶gs://yourdomain.com,则需要在此处将域名的@ record设置为,当它指向c.storage.googleapis.com时,其作用与为子域命名时相同
您可能会发现,您的域提供商不支持通过@ Record指向根域的CNAME。为了摆脱这种情况,您可以考虑将您的域名服务器指向支持别名或ANAME的DNS提供商。请参考了解更多详细信息。
您可以在Google Cloud Storage (GCS)上试用,为设置一个Custom NameServers,并将其@ DNS Record作为alias设置为c.storage.googleapis.com。Serve 作为public-read,并与其TLD (gs://yourdomain.com)同名。您可能会发现它工作得很好。
发布于 2018-02-01 19:13:50
我的解决方案是:-我在谷歌云存储上创建了一个静态网站,存储桶名称如下: www.mydomain.hu -在我的域名服务提供商处为www添加了指向c.storage.googleapis.com的CNAME记录-创建了一个包含以下内容的.htaccess文件,并上载到mydomain.hu/的根目录
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^mydomain\.hu
RewriteRule ^(.*)$ http://www.mydomain.hu/$1 [R=permanent,L]如果您已经有一个.htaccess文件,请将这四行代码插入到文件开头。
https://stackoverflow.com/questions/27678638
复制相似问题