Nonaktifkan caching konten statis di IIS 7

9

Saya seorang pengembang memiliki apa yang seharusnya menjadi masalah yang relatif sederhana di IIS 7 pada Windows Server 2008 R2. Masalahnya adalah bahwa IIS 7 terlalu caching semua konten statis di server. Itu caching semua konten .html dan .js dan tidak memperhatikan ketika konten berubah pada disk kecuali saya iisreset.

Saya sudah mencoba yang berikut ini:

  1. Menghapus cache lokal di browser saya (saya yakin 99% ini adalah masalah caching server)
  2. Di IIS Admin di OutputCaching menambahkan ekstensi .html dan hapus centang "caching mode Pengguna" dan hapus centang "caching mode-Kernel"
  3. Di IIS Admin di OutputCaching menambahkan ekstensi .html dan memeriksa "caching mode pengguna" dan memilih radio untuk "Cegah semua caching"
  4. Dalam IIS Admin mengedit pengaturan Fitur Cache Output dan menghapus centang "Aktifkan cache" dan "Aktifkan cache kernel di bawah OutputCaching.
  5. Menjalankan "C: \ Windows \ System32 \ inetsrv \ config \ appcmd set config" SharePoint - 80 "-bagian: system.webServer / caching -diaktifkan: false"
  6. Melihat melalui applicationHost.config dan menonaktifkan apa pun yang berkaitan dengan caching yang bisa saya temukan.

Sepertinya tidak ada yang berhasil. Saya menjadi sangat frustrasi. Adakah yang bisa membantu?

Lee Richardson
sumber
2
Apakah Anda berhasil menemukan solusi. Saya menghadapi masalah yang sama. Sudah mencoba semuanya dan saya tidak bisa menonaktifkan caching. Satu-satunya cara adalah mengubah nama file file, membuat permintaan dan kemudian mengubah kembali.
Tivie

Jawaban:

4

Saya benar-benar ingin melihat system.webServer/cachingbagian dari applicationhost.config Anda dan web.config. Silakan tempelkan jika Anda bisa. Dengan menjalankan perintah appcmd di atas, Anda baru saja menonaktifkan mode Pengguna caching Anda masih memiliki cache Kernel diaktifkan. Juga, jika Anda benar-benar ingin menonaktifkan caching di situs Web atau tingkat server, ubah saja yang berikut ini:

<system.webServer>
    <caching enabled="false" enableKernelCache="false" />
</system.webServer>

Anda juga dapat menggunakan alat Fiddler untuk memverifikasi apakah konten benar-benar di-cache yaitu jika itu mengembalikan Anda 304.

Vivek Kumbhar
sumber
0

Di server, jika Anda menjalankan 'netsh http show cache', apakah Anda melihat entri yang di-cache? Jika demikian, maka Anda belum berhasil menonaktifkan Output Caching di server web.


sumber
0

Dan hanya $ 0,02 untuk memeriksa bahwa penangan Anda adalah penangan yang Anda harapkan.

File statis biasanya dilayani oleh penangan file statis. Jika Anda telah melakukan hal-hal gila seperti membuat peta skrip wildcard, atau mendaftarkan modul untuk semua jenis file dan kata kerja ...

TristanK
sumber