nginx剥离最后修改和if-modified-since标头,但我的rails应用程序需要它们
我的Rails 3.2应用程序使用 – 通过#stale?
– If-Modified-Since
请求中的HTTP头和响应中的Last-Modified
头决定是否应该动态生成一些数据。 这在开发中非常有效(无论是使用webrick还是unicorn_rails),因为curl -D headers.txt
显示如果提供了正确的If-Modified-Since
值,则发送304响应,而Last-Modified
标头另外发送请求数据。
不幸的是,一旦部署在nginx之后, If-Modified-Since
(提供正确的头部值)都不会传递给unicorn – 因此Rails应用程序 – 也不会Last-Modified
传播到客户端:无条件地生成请求并且响应永远不会包含合适的标题。
事实certificate,nginx实际上并没有剥离任何东西。 仪表显示控制器收到If-Modified-Since
。 Rails #stale?
收到包含不良结果的请求,导致一个nil
参数,静默吞咽,随后忽略与If-Modified-Since
并将Last-Modified
定位为nil
。