2009-09-22 107 views
0

我有一個程序,使用webrequest和webresponse檢查文件是否每3秒出現一次。如果該文件存在,它會做一些事情,如果沒有,等等,該部分工作正常。我有一個網頁來控制程序,方法是創建一個包含輸入到頁面中的消息和其他變量的文件,然後創建它並將其發送到程序正在檢查的文件夾中。還有一個「停止」按鈕,刪除該文件。IIS /緩存問題?

這很適用,只不過一個消息啓動後又被刪除,當第二次使用不同的消息啓動時,程序仍會看到舊消息。我看到文件被刪除在IIS中,所以這不是問題。

我想過元標記來防止緩存,但會有文件被動態命名解決這個問題嗎?如何讓程序能夠檢查文件名只有第一部分已知的文件?我已經找到了在本地機器上檢查目錄的解決方案,但這在這裏不起作用。

歡迎任何想法,謝謝。

回答

0

我並不習慣於IIS,但在Apache中,您可以創建.htaccess並設置/修改HTTP頭。

通過'Cache-Control',你可以告訴代理/瀏覽器不要緩存文件。 http://www.w3.org/Protocols/rfc2616/rfc2616-sec13.html

像這樣的解決方案也可以在IIS中工作,如果它確實是緩存問題。

(要進行測試,開放使用與緩存較受歡迎的瀏覽器關閉

0

一個簡單的黑客是每次

http://www.yourdomain.com/yourpage.aspx?random=123489797

獨特的東西添加到URL添加一個隨機數的URL強制它是新鮮的,即使你不使用查詢字符串參數,IIS不知道,所以無論如何執行頁面

+0

是這種技術來使輸出緩存失效嗎? – Nirlep 2009-09-22 16:09:00

+0

它的作品無效如果正在使用瀏覽器,則兩個服務器都會輸出緩存以及用戶瀏覽器緩存。 – 2009-09-22 16:19:03