Кто-нибудь знает, почему, если на моей странице есть куки, кеш вывода не работает!
Пример страницы
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="ct.aspx.vb" Inherits="ct" %>
<%@ OutputCache Duration="600" Location="Server" VaryByParam="none" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<h1>Cache test</h1>
<p id="rndout" runat="server"></p>
</div>
</form>
</body>
</html>
Пример кода позади:
Partial Class ct
Inherits System.Web.UI.Page
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
Dim rc As New Random()
Dim rn As Integer
rn = rc.Next()
rndout.InnerHtml = rn.ToString
Response.Cookies("sym")("hello") = "world"
Response.Cookies("sym").Expires = DateTime.Now.AddDays(370)
Response.Cookies("sym").Domain = Application.Get("cookieurl")
End Sub
End Class
при развертывании на iis 6 или 7 он не кешируется, однако, если я закомментирую 3 строки Response.Cookies, это произойдет.
При запуске в VS работает нормально в обоих направлениях.
Есть ли какой-нибудь параметр в iis / web.config и т. Д., Разрешающий кэш вывода, пока я устанавливаю response.cookies. Я понимаю, что содержимое файла cookie будет кэшироваться, так как это всего лишь часть кешированного ответа http.