У меня есть простая страница aspx. Вот верх ее: -Почему использование ASP.NET OutputCache позволяет вернуть 200 OK, а не 304 Not Modified?
<%@ Page
Language="C#"
AutoEventWireup="true"
CodeFile="Foo.aspx.cs"
Inherits="Foo" %>
<%@ OutputCache Duration="3600" VaryByParam="none" Location="Any" %>
Теперь, каждый раз, когда я попал на страницу в FireFox (или нажмите F5 или нажмите клавишу ВВОД в строке URL) Я постоянно получаю 200 OK ответ. Вот пример ответа от FireBug: -
Заголовки запросов: -
GET /sitemap.xml HTTP/1.1
Host: localhost.foo.com.au
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-GB; rv:1.9.2)
Gecko/20100115 Firefox/3.6
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-au,en-gb;q=0.7,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Cookie: <snipped>
If-Modified-Since: Tue, 01 Jun 2010 07:35:17 GMT
If-None-Match: ""
Cache-Control: max-age=0
Response Headers: -
вкладкаHTTP/1.1 200 OK
Cache-Control: public
Content-Type: text/xml; charset=utf-8
Expires: Tue, 01 Jun 2010 08:35:17 GMT
Last-Modified: Tue, 01 Jun 2010 07:35:17 GMT
Etag: ""
Server: Microsoft-IIS/7.5
X-Powered-By: UrlRewriter.NET 2.0.0
X-AspNet-Version: 4.0.30319
Date: Tue, 01 Jun 2010 07:35:20 GMT
Content-Length: 775
Firebug Cache: -
Last Modified Tue Jun 01 2010 17:35:20 GMT+1000 (AUS Eastern Standard Time)
Last Fetched Tue Jun 01 2010 17:35:20 GMT+1000 (AUS Eastern Standard Time)
Expires Tue Jun 01 2010 18:35:17 GMT+1000 (AUS Eastern Standard Time)
Data Size 775
Fetch Count 105
Device disk
Теперь, если я попробуйте в Fiddler с помощью построителя запросов (и никаких дополнительных данных). Я также получаю тот же ответ 200 OK.
Заголовки запросов: -
GET http://localhost.foo.com.au/sitemap.xml HTTP/1.1
User-Agent: Fiddler
Host: foo.com.au
Response Headers: -
HTTP/1.1 200 OK
Cache-Control: public
Content-Type: text/xml; charset=utf-8
Expires: Tue, 01 Jun 2010 07:58:00 GMT
Last-Modified: Tue, 01 Jun 2010 06:58:00 GMT
ETag: ""
Server: Microsoft-IIS/7.5
X-Powered-By: UrlRewriter.NET 2.0.0
X-AspNet-Version: 4.0.30319
Date: Tue, 01 Jun 2010 06:59:16 GMT
Content-Length: 775
Похоже, что просит кэшировать его, но это не :(
Сервер представляет собой локальный IIS7.5 на Win7. (как указано в данных ответа).
Может ли кто-нибудь увидеть, что я делаю неправильно?
Это может произойти из-за перезаписи URL. Попробуйте получить доступ к странице через путь ~ .aspx, если все в порядке, поэтому причиной является модуль urlRewriter. –
@ Pure.Krome когда-либо нашел объяснение/решение для этого? –
@ GabyakaG.Petrioli nope. никогда не получал аварию за это. –