Ruby on rails Sitemap_生成器以未知URL生成站点地图

Ruby on rails Sitemap_生成器以未知URL生成站点地图,ruby-on-rails,ruby-on-rails-3,heroku,sitemap,Ruby On Rails,Ruby On Rails 3,Heroku,Sitemap,我正在使用gem为我的站点生成站点地图 在本地生成站点地图效果很好,我可以访问http://localhost:3000/sitemap1.xml.gz 部署到Heroku并运行后 heroku run rake sitemap:refresh --app myapp-prod 我明白了: In /app/public/ + sitemap1.xml.gz 254 links / 4.74 KB + sitem

我正在使用gem为我的站点生成站点地图

在本地生成站点地图效果很好,我可以访问
http://localhost:3000/sitemap1.xml.gz

部署到Heroku并运行后

heroku run rake sitemap:refresh --app myapp-prod
我明白了:

In /app/public/
+ sitemap1.xml.gz                                        254 links /    4.74 KB
+ sitemap_index.xml.gz                                  1 sitemaps /  231 Bytes
Sitemap stats: 254 links / 1 sitemaps / 0m06s
到目前为止还不错-但是,当尝试访问我位于
https://myapp.com/sitemap1.xml.gz
,我得到一个404错误。我尝试了以下方法来解决此问题,但均无效:

  • 为两个本地生成的xml文件调用
    git add
    ,将它们推送到Heroku,然后调用
    Heroku run rake sitemap:refresh--app myapp prod
    以使用我的产品URL更新本地生成的URL。但是,文件没有被刷新,它与本地生成的文件保持完全相同,即使返回与上面相同的消息
  • 将站点地图生成为自定义路径,例如public/shared/。但访问
    https://myapp.com/shared/sitemap1.xml.gz
  • 所有可能和不可能的URL组合,如
    https://myapp.com/public/sitemap1.xml.gz
    (当然,他们永远不会成功,但他们想千方百计)

  • 关于什么会导致这种行为,以及站点地图可能存储在哪里,有什么想法吗?

    经过进一步的研究,我终于找到了问题所在

    由于Heroku使用只读文件系统,因此无法将站点地图生成到
    public
    目录。这里将更详细地解释这一点:


    最终对我有效的解决方案是将站点地图生成到我的Amazon S3存储中,如前所述。

    经过进一步的研究,我终于找到了问题所在

    由于Heroku使用只读文件系统,因此无法将站点地图生成到
    public
    目录。这里将更详细地解释这一点:


    最终对我有效的解决方案是将站点地图生成到我的Amazon S3存储中,如前所述。

    您如何将站点地图上载到Google Web Master tools,因为默认情况下,它希望站点地图位于

    我在AmazonS3中托管了我的站点地图,它在我的robots.txt文件中被引用,但我需要告诉GoogleWebMasterTools在哪里可以找到它


    有什么建议吗?

    由于默认情况下希望站点地图位于….上,您如何将站点地图上载到Google Web Master tools

    我在AmazonS3中托管了我的站点地图,它在我的robots.txt文件中被引用,但我需要告诉GoogleWebMasterTools在哪里可以找到它


    有什么建议吗?

    Nevermind,我找到了这篇关于将amazons3网站添加到google网站管理员工具并在那里添加站点地图的博文-Nevermind,我找到了这篇关于将amazons3网站添加到google网站管理员工具并在那里添加站点地图的博文-