ruby-on-rails – 带有rails 3.2nginxphusion passanger的响应头中缺少电子标签

ruby-on-rails – 带有rails 3.2nginxphusion passanger的响应头中缺少电子标签,第1张

概述我有一个非常简单的带有电子标签的控制器: class EtagsController < ApplicationController before_filter :require_user def index if stale?(:etag => current_user) render :layout => false end endend 当我在本 我有一个非常简单的带有电子标签的控制器:

class ETagsController < ApplicationController  before_filter :require_user  def index    if stale?(:etag => current_user)      render :layout => false    end  endend

当我在本地开发环境中运行它时,第一个请求是响应中带有ETag的200.第二个请求提交回ETag,我按预期得到304响应.

但是,当在我的暂存或生产环境中执行时,响应中没有ETag.

以下是我的登台环境中的请求和响应标头:

Request URL: /eTagsRequest Method:GETStatus Code:200 OKRequest headersAccept:text/HTML,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8Accept-EnCoding:gzip,deflate,sdchAccept-Language:en-US,en;q=0.8Cache-Control:max-age=0Connection:keep-alivecookie:__utma=169165539.1455374302.1372358226.1372358226.1372358226.1; __utmb=169165539.1.10.1372358226; __utmc=169165539; __utmz=169165539.1372358226.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); user_credentials=4ffa15df84112d22434f121eed06c59a5c32cb9ab72cf6bf1e952a3993201b5dec2917a028d20d4b63c70a84c6a290c4d5c4673ce967efec6f139c161850bc37%3A%3A101; _session_ID=d21671b70349653406442ee0716633b2User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_4) AppleWebKit/537.36 (KHTML,like Gecko) Chrome/27.0.1453.116 Safari/537.36Response headersCache-Control:must-revalIDate,private,max-age=0Connection:keep-alivecontent-encoding:gzipContent-Length:65Content-Type:text/HTML; charset=utf-8Date:Thu,27 Jun 2013 18:37:10 GMTServer:Nginx/1.4.1 + Phusion Passenger 3.0.19Status:200X-Powered-By:Phusion Passenger (mod_rails/mod_rack) 3.0.19X-Rack-Cache:missX-Request-ID:620c1ab99a1af7b6dde62cee77fc59feX-Runtime:0.205884X-UA-Compatible:IE=Edge,Chrome=1

我很难过.为什么我的暂存环境不尊重控制器中的ETag?

涉及的技术:

> Phusion Passenger 3.0.19
> Nginx 1.4.1
> Rails 3.2.13

Thannks

@H_419_34@解决方法 看来Nginx>如果为Nginx启用gzip,1.3将忽略应用程序服务器中的电子标记.我们没有在Nginx中找到允许我们从应用程序服务器传递e-Tags并gzip响应的解决方案.我认为弱电子标签可能适用于此,但Nginx目前不支持它们. @H_403_39@ 总结

以上是内存溢出为你收集整理的ruby-on-rails – 带有rails 3.2 / nginx / phusion passanger的响应头中缺少电子标签全部内容,希望文章能够帮你解决ruby-on-rails – 带有rails 3.2 / nginx / phusion passanger的响应头中缺少电子标签所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1281457.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-09
下一篇 2022-06-09

发表评论

登录后才能评论

评论列表(0条)

保存