问题标签 [page-caching]

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 投票
2 回答
194 浏览

ruby-on-rails - 我的 Rails page_cache 将其他人的域附加到链接,我该如何阻止它?

让我尽可能彻底地解释情况如何。

我有一个 Rails 应用程序,它为网站的特定部分使用页面缓存。在浏览 Google Analytics 时,我注意到我自己的域作为引荐来源,我觉得这很奇怪。经过进一步调查,我发现当我以我的域作为引荐来源网址访问其中一个页面时,链接指向不同的域名,但呈现页面正常。例如:

我在 domain.com 上。我转到 domain.com/someones_profile,当我将鼠标悬停在任何链接上时,它会显示 anotherdomain.com/someones_profile/about。现在,如果我单击该链接,它将带我到 anotherdomain.com/someones_profile/about 但这是我的页面在我的服务器上被访问(日志验证它。)

我通过使用我未使用的域名之一并将 A 记录更改为我的服务器的 IP 来测试这一点。然后我清除了页面缓存目录并使用我刚刚设置的域 domain2.com/someones_profile 访问了一个可缓存页面,并将链接缓存为 domain2.com/someones_profile。

希望这个解释是有道理的。“渗透”我的缓存的域属于我不认识的人,其意图似乎没有任何恶意,但我想知道 Rails 是否有任何内置方法来规避这样的事情。诸如强制 page_cache 链接使用特定域而不是引用域是什么。

任何帮助将不胜感激,我更喜欢使用内置的 Rails 方法而不是自己写东西,也许/也许不是因为我很懒。

0 投票
1 回答
173 浏览

.net - 如何让自定义 IHttpHandler 能够处理页面缓存?

这是我的代码:

它不起作用。谁能告诉我该怎么做?

0 投票
2 回答
2617 浏览

ruby-on-rails-3 - 使用 Memcached 进行页面缓存

我在我的 Ruby on Rails 3 应用程序中使用 Memcached。它适用于动作和片段缓存,但是当我尝试使用页面缓存时,页面存储在文件系统中而不是 Memcached 中。如何让 Rails 也使用 Memcached 进行页面缓存?

在我的 development.rb 文件中:

0 投票
2 回答
936 浏览

ruby - 缓存页面:全部

有没有办法告诉 Rails 3 缓存给定控制器中的所有页面,而不必在调用时将它们全部列出caches_page?我试过caches_page :all了,但它不起作用。

0 投票
1 回答
547 浏览

ruby-on-rails - 启用 Rails 页面缓存会导致 http 标头字符集消失

我需要 charset 为 utf-8,默认情况下似乎是这种情况。最近我为一些静态页面启用了页面缓存:

缓存工作正常,我看到在我的 /public 文件夹中生成了相应的 about.html 和 contact.html 页面,除了页面呈现时,它不再是 utf-8。

在谷歌搜索了一下之后,我尝试在缓存之前和之后使用 wget 查看 http 标头:

第一次:

缓存:

结果页面以 ISO-8859-1 显示,我得到一堆乱码。有谁知道我可以如何防止这种不良结果?谢谢你。

0 投票
3 回答
1782 浏览

ruby-on-rails-3 - 使用 Rails 3.0 将页面呈现为保存的 HTML 文件?

我正在 Rails 3.0 中构建一个简单的网站生成器应用程序。我想要一个控制器中的“发布”操作,它的工作方式与普通的“显示”操作一样,而是将页面作为 HTML 文件保存在“公共”目录中,而不是在浏览器中显示。也就是说,我想使用 Rails 渲染机制来创建文件,而不是提供 HTTP 响应。

最好的方法是什么?

我应该简单地添加caches_page :publish到控制器吗?

还是使用render_to_stringand File.new

0 投票
1 回答
1798 浏览

javascript - 如何使用 javascript 从 cookie 访问用户 ID:Rails、Devise、Page Caching

我为不同的用户提供了各种图片库。在大多数情况下,整个页面可能会被缓存。但是,我还想要以下功能:

  1. 如果用户登录并访问他自己的画廊,则用户可以看到覆盖每个图像的“x”删除链接。

  2. 如果用户登录并在其他人的图库中,那么他们可以看到叠加层“赞”、“赞”为每张图像投票。

  3. 如果用户未登录,他们可以看到用于投票的覆盖,但是单击它们将弹出登录对话框。

我想出的方法是这样的:

  • 在服务器端 erb 模板中,无论登录状态如何,我都会始终生成投票链接并删除链接,但默认情况下我会将它们隐藏在 css 中。
  • 然后,我将根据用户的登录状态使用 js 显示它们。

问题是......在缓存页面上确定用户登录状态的最佳方法是什么?我可以在缓存页面上使用 cookie 吗?

如果我在缓存页面上有一段 javascript 检查类似于以下的 cookie 值,它会起作用吗:

我讨厌构建一些特殊的东西来设置那个cookie......应该已经存在某种类型的DEVISE cookie吧?我如何访问它?

0 投票
1 回答
195 浏览

caching - 缓存 HTML 页面

我想要一种机制来缓存/索引网站的 html 页面。因此,如果再次请求该页面,我可以简单地从缓存或索引中获取该页面并发送它。Solr可以吗?因为 Solr 似乎总是存储 html 的显示(文本)部分,而不是整个 HTML Dom。有没有其他开源技术可以帮助我以快速的性能做到这一点?

0 投票
1 回答
206 浏览

ruby-on-rails - XHR 的 Rails 页面缓存

Rails 的机制如何cahes_page处理 Ajax/XHR 请求?

一个动作通常会根据 做出不同的响应request.xhr?,但路径是相同的。那么 Rails 会安排缓存这两个版本吗?

0 投票
1 回答
1791 浏览

ruby-on-rails - Rails 3.2 的缓存未命中和开发中的页面缓存 - 还有其他人吗?

在开发模式下使用 Rails 3.2,我正在尝试测试一些简单的页面缓存。

pages_controller.rb

发展.rb

应用程序.rb

当我测试此设置时,它似乎像正常一样处理这些操作,并且页面缓存按预期写入。但是,随后的请求报告了以下两件让我感到困惑的事情:

  1. 它似乎错过了缓存,但是......
  2. 之后的请求似乎没有加载控制器、运行任何查询等,这让我相信它确实是从缓存中加载的。

这是第一次请求时日志输出的内容,然后是五次重新加载:

任何人都知道为什么缓存说它丢失了?