是否可以在没有cookie的情况下设置nginx?

时间:2017-07-27 17:04:19

标签: nginx webserver cookieless

我看到,特别是在德国,更多和mor网站,要求获得设置cookie的许可。我目前的项目在应用程序级别上不需要cookie。所以我想知道我是不是应该完全放弃饼干。

我的问题:

是否可以在不使用cookie的情况下完全使用nginx设置静态网站?

如果是这样,没有cookie的网站会有什么缺点吗?

1 个答案:

答案 0 :(得分:3)

是的,这当然是可能的。

绝对没有缺点°(°除非你关心跟踪,用户登录或有任何偏好,尽管也有替代方案)。

另一方面,有很多好处 - 您确保如果一个用户与另一个用户共享该URL,则URL将按预期工作,因为它不依赖于任何cookie。

请注意,在nginx的帮助下,您甚至可以从严格需要cookie的后端应用程序中删除cookie。例如,我在http://BXR.SU/安装了我的OpenGrok,在那里我使用nginx从两个方面剥离cookie,并有效地使用面向客户端的URL路径作为首选标识符来代替保存这些信息在cookie中,并在将请求传递回OpenGrok时将$uri转换为$args(代替cookie)(如果OpenGrok不支持$ args作为后备,它也将是可能仍然在后端使用cookie,但在将内容提供给客户端之前仍然清除它们。)

有关我的实施的更多讨论,请参阅http://serverfault.com/questions/462799/leverage-proxy-caching-with-nginx-by-removing-set-cookie-header/467774#467774。例如,以下内容可用于确保您的后端既不能设置也不能获取任何cookie:

    proxy_hide_header       Set-Cookie;
    proxy_ignore_headers    Set-Cookie;
    # important! Remember the special inheritance rules for proxy_set_header:
    # http://nginx.org/ru/docs/http/ngx_http_proxy_module.html#proxy_set_header
    proxy_set_header        Cookie "";

请注意,即使使用上述代码,前端仍可借助JavaScript设置和读取Cookie。