问题标签 [sitemap-generator-gem]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
122 浏览

ruby-on-rails - 在 sitemap_generator 中为 microsoft azure 编写适配器

我正在使用sitemap_generator在我的 RoR 项目中生成站点地图。到目前为止一切正常。我在 Heroku 上托管我的项目,它不允许写入本地文件系统。我仍然需要一些写入权限,因为站点地图文件需要在上传之前写出来。但我必须使用 microsoft azure 来存储我的站点地图。sitemap_generator 中列出的适配器不包括 azure。有人能指出我为 azure 编写适配器的正确方向吗?

参考本文中的“配置载波”,我对代码进行了一些更改。

但我不确定只编辑初始化文件是否有帮助。在上面的文章中,Carrierwave 指向 WaveAdapter 它使用 CarrierWave::Uploader::Base 上传到 CarrierWave 支持的任何服务

配置/初始化程序/azure.rb

请帮忙!

0 投票
1 回答
56 浏览

ruby-on-rails - 从sitemap.rb中的route.rb获取路径时如何确定任何控制器路径的http方法?

我想生成一个包含 300 多个 URL 路径的网站的站点地图。因此,使用站点地图生成器,我从 routes.rb 文件中获取 URL 路径。现在我不希望 SEO 爬过我的帖子网址。所以,我想在 sitemap.rb 中确定控制器路径的 Http 方法类型。怎么做?

我尝试使用 route.path.spec.left.memo.request_method_match 获取 http-method,但出现 NoMethodError。

0 投票
0 回答
79 浏览

ruby-on-rails - kjvarga 的 Rails sitemap_generator 无法运行,因为旧版 ACL 尝试设置已经具有统一存储桶级别访问权限的访问权限

我正在尝试使用 rails sitemap_generator。宝石可以在这里找到。https://github.com/kjvarga/sitemap_generator/ 我收到错误消息

适配器的代码在这里我突出显示了将 acl 设置为 public 的行。

这就是我初始化它的方式

当我初始化不尝试设置 acl 策略时,是否还有另一个选项可以通过。我总是可以在 Google Cloud Platform 上更改存储桶的策略,但这不是我想要使用的访问策略。我感谢任何帮助或建议。谢谢你们。

0 投票
1 回答
104 浏览

ruby-on-rails - 无法在 sitemap_generator s3 aws 适配器中指定 digitalocean 端点

我在我们的 Rails 应用程序中使用sitemap_generator并尝试创建站点地图并将其上传到 DigitalOcean 空间(据我所知,它与 s3 兼容)但我无法覆盖站点地图适配器中的端点属性,因此它始终假定我的端点是亚马逊而不是 digitalocean

我得到的错误是:

我在这部分的 sitemap.rb 配置中的代码是:

我尝试使用另一个适配器,但我得到一个更加模棱两可的错误(显然相同,无法连接)

0 投票
1 回答
161 浏览

ruby-on-rails - Rails Sitemap_generator 使用 aws_fog 配置

我在heroku上使用带有rails 6的sitemap_generator gem。有人告诉我,最简单的方法是在亚马逊上使用 s3 并与 aws_fog 桥接。

该实现在 gem 方面有很好的记录......但我正在努力确保亚马逊配置是正确的。

我搜索了很多,找不到任何东西,所以我希望有人能帮忙

我配置了一个 s3 实例,将其命名为示例,并将其添加到美国东部(俄亥俄)地区。这一切都很简单。

属性选项卡...应该和不应该选择什么?我什么都不选。

权限选项卡。我公开了,虽然这感觉不对……存储桶是用于站点地图的,所以它应该是公开的,对吗?

我根据文档设置了我的区域

当我在本地主机上点击 rake sitemap:refresh:no_ping 时,我得到:status_line => "HTTP/1.1 301 Moved Permanently\r\n"

我想也许我需要将站点地图文件夹添加到 s3 实例,所以我这样做了,但我仍然得到:status_line =>“HTTP/1.1 301 Moved Permanently\r\n”。

任何提示都会很棒...

0 投票
1 回答
100 浏览

ruby-on-rails - AWS S3“拒绝访问”在 Rails Sitemap_Generator 上尝试

因此,我按照 sitemap_generator Gem 上的说明将站点地图上传到 S3(因为它不是从“公共”文件夹中读取的)并且我不断收到以下错误:

这很有趣,因为我在 S3 上使用完全相同的 Active_Storage 凭据,并且工作得很好。

这是我的站点地图.rb

这一切都直接来自 site_generator 页面上的自述文件......所以我不太明白为什么如果相同的凭据适用于 Active Storage,它为什么不能工作......

https://github.com/kjvarga/sitemap_generator

0 投票
0 回答
18 浏览

ruby-on-rails - 每当 cron 作业时,都无法同时运行 2 个依赖命令

我在一个基于 Rails 的网站上工作,我必须使用sitemap_generatorgem 创建一个站点地图。

到目前为止一切顺利,直到我到达必须自动化站点地图生成的部分。我需要运行以刷新站点地图的 2 个命令是direnv allow && rake sitemap:refresh.

我正在尝试使用whenevergem 创建一个 cron 作业,这就是我里面的内容config/schedule.rb

generate_sitemap.sh文件位于项目根目录中,内容如下:

为了激活 cron 作业,我whenever --update-crontab在终端中执行。通过运行crontab -l,我有以下输出:

我必须提到,如果我./generate_sitemap.sh从命令行执行,它可以工作。此外,如果我按如下方式创建 cron 作业 config/schedule.rb

direnv allow它已执行,但由于未事先执行而导致错误。

我的问题是:如何创建一个同时执行direnv allow和的 cron 作业rake sitemap:refresh