问题标签 [etag]

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 回答
523 浏览

python - 如何创建具有过期日期的 Etag

我正在考虑创建一个带有过期日期的 etag。

实际上我创建了一个带有大量参数的 etag,但我想用过期日期来制作它。

我有将信息保存在服务器端的解决方案,但我更喜欢将任何信息编码到其中。

我正在寻找更好的方法来做到这一点。

我正在考虑使用 cookie 的解决方案

0 投票
1 回答
259 浏览

caching - 关于处理过期标题、etag 和内容更新的想法?

我已经在我的网站上实现了与服务器无关的 eTag,我现在正在考虑添加过期标头以防止大多数 304 请求。

我担心使用长过期标头,因为如果您需要更新内容,则很难强制刷新。而且我也不喜欢用版本控制查询字符串来弄乱我的代码,例如:

因此,我正在考虑将过期标头设置为几乎所有内容的短时间,例如 10 分钟。这样,我可能只有 10 分钟的陈旧内容窗口,但对于正常的浏览会话,我将停止大部分 304。即使他们确实停留更长时间,除非内容发生变化,否则我只会每 10 分钟提供一次 304。

它看起来很优雅,但我已经看到很多网站使用上述版本控制查询字符串方法,甚至谷歌的 mod_pagespeed 也有一个或多或少自动执行版本控制的选项,所以我只是好奇这是一个可靠的方法还是我错过了一些使它不切实际的东西。

谢谢

0 投票
1 回答
171 浏览

emacs - Emacs TAGS 表被 lex/yacc 文件中的 #line 指令混淆

我正在尝试使用 etags 为大型软件项目生成 TAGS 表。由于 lex/yacc 生成的 .c 文件中的 #line 指令引用非限定文件名而不是 #包含包含该文件的子目录的行。

如何使用这些#line 指令正确解析到子目录中的现有文件而不是被解释为顶级文件来生成 TAGS 表?

我从顶级目录运行这样的 etags:

但是我有一个文件 act/Par.c,它在生成的文件中间包含以下几行:

这导致以下 TAGS 表条目:

但是 Par.y 文件实际上位于 act/Par.y,但 #line 指令是相对于当前文件的,而 TAGS 使其相对于生成的 TAGS 文件。

在不改变构建项目的方式的情况下,如何生成 TAGS 文件,以便将这些 #line 指令正确解释为与它们所在的文件相关?或者,我怎样才能轻松跳过这些麻烦的文件?

0 投票
0 回答
243 浏览

asp.net - 使用 PowerShell 设置 Filetimestamp:ChangeNumber 以强制 IIS 中的 ETag 在整个 webfarm 中保持一致

我正在使用 PowerShell 脚本将 ASP.Net Web 应用程序部署到 Web 场。显然,我希望两台服务器的 ETag 相同。

我知道 ETag 是使用生成的,Filetimestamp:ChangeNumber但是我不知道如何设置文件的 ChangeNumber。我发现了一篇声称可以做到这一点的博客文章(参考 1),但是它设置LastWriteTimeCreationTime.

将 和 设置LastWriteTimeCreationTime与源文件相同会强制 ETag 相同吗?还是我需要以某种方式设置ChangeNumber

是否可以设置ChangeNumber使用 PowerShell?还是我完全误解了 ETags?

参考 1. http://omaralzabir.com/synchronize-file-date-time-in-multiple-servers-solve-iis-etag-problem/

0 投票
1 回答
2186 浏览

asp.net-mvc - ASP.NET MVC - web.config 中的缓存和压缩设置并不总是被使用

在我的 ASP.NET MVC 2 应用程序中,我使用以下属性装饰了一个操作。

(对于 ETag 属性,我使用了在此处找到的属性类。)

我还在我的 web.config 中添加了以下内容。

我的问题是,当我从托管服务器加载页面并在 Firebug 中查看标题时,我收到了一个 ETag,但没有缓存到期。

当我在本地加载页面时,响应没有ETag,但确实设置了“Cache-Control”和“Expires”字段。

另外,请注意,虽然我在 web.config 中设置了 gzip 压缩,但它并没有出现在任何一个响应标头中。

那么为什么我的 web.config 文件中的设置有时会被忽略呢?我的托管服务器是否有可能覆盖这些?如果是这样,他们删除缓存或压缩设置没有多大意义,不是吗?

0 投票
1 回答
333 浏览

http - HTTP ETag 复制

最近发现了与HTTP ETag和我们的CDN相关的问题,我尝试在 Fiddler 中为知名站点捕获一些问题。但是,无论我使用哪种浏览器/网站组合,我似乎都没有看到任何经过。

这有什么原因吗?你能推荐一个我可以看到它们的组合吗?也许它们不再被广泛使用?

0 投票
1 回答
1792 浏览

eclipse - 如何使用 Etags 在 Emacs 中找到类、方法、变量的引用?

我想在 Emacs 中找到对类、方法、变量的所有引用,就像我在 Eclipse 中Ctrl+Shift+G(或Cmd+Shift+G在 Mac 上)设置项目的 ETag 后能够做到的那样。

我可以很好地浏览代码,但是找到对事物的引用是理解大型代码库的关键,我确信这在 Emacs 中一定是可能的,但我找不到任何关于它的东西,也许 Emacs 专家会马上知道。

谢谢。

0 投票
2 回答
668 浏览

python - Python:避免在抓取时下载未更改页面的最佳算法

我正在编写一个爬虫,它会定期检查新闻网站列表中的新文章。我已经阅读了避免不必要的页面下载的不同方法,基本上确定了 5 个标题元素,这些元素可能有助于确定页面是否已更改:

  1. HTTP 状态
  2. 电子标签
  3. Last_modified(与 If-Modified-Since 请求结合使用)
  4. 过期
  5. 内容长度。

优秀的FeedParser.org似乎实现了其中一些方法。

我正在寻找做出这种决定的 Python(或任何类似语言)的最佳代码。请记住,标头信息始终由服务器提供。

这可能是这样的:

0 投票
3 回答
10636 浏览

c# - How do I generate an http ETag in c#?

Given a file being returned as part of a http request. What is the correct method of creating an ETag for that file?

http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.19

I have seen it done several ways

0 投票
2 回答
54 浏览

etag - Clicklifter 出现在 ETag 中

我刚刚在我的网站上运行了YSlow,它显示在 ETag 下:

我不知道它是什么或如何摆脱它,我在任何地方都找不到有关此的任何信息。

如果我在视图源中看不到它,但它显示在YSlow中的“配置实体标签”下,至少有人能告诉我如何摆脱它吗?