Mengapa My Go http.FileServer Melayan Fail Lapuk Apabila Menggunakan Folder Kongsi Kotak Maya?

Barbara Streisand
Lepaskan: 2024-11-04 08:46:02
asal
696 orang telah melayarinya

Why Is My Go http.FileServer Serving Outdated Files When Using Virtual Box Shared Folders?

Isu Caching dengan http.FileServer in Go

http.FileServer in Go direka untuk menyampaikan fail statik daripada sistem fail tertentu, menyediakan cara yang cekap dan mudah untuk mengehoskan kandungan web. Walau bagaimanapun, keadaan tertentu boleh membawa kepada tingkah laku caching yang tidak dijangka, mengakibatkan fail lapuk disampaikan.

Satu isu sedemikian timbul apabila menggunakan folder kongsi Kotak Maya untuk menyimpan fail untuk http.FileServer. Dalam senario ini, masalahnya adalah berkaitan dengan akses disegerakkan bagi fail ini antara hos dan sistem pengendalian tetamu.

Untuk menggambarkan, mari kita pertimbangkan contoh yang disediakan:

<code class="go">http.Handle("/", http.FileServer(http.Dir("./www/")))
err := http.ListenAndServe(":8080", nil)
if err != nil {
    fmt.Println(err)
}</code>
Salin selepas log masuk

Dengan HTML fail seperti:

<code class="html"><!doctype html>
<html>
<body>
    <p>Hello there</p>
</body>
</html></code>
Salin selepas log masuk

Apabila mula-mula disiarkan, kandungan dipaparkan dengan betul dan pengepala respons menunjukkan panjang kandungan yang sesuai dan cap waktu terakhir diubah suai.

Walau bagaimanapun, apabila membuat perubahan pada HTML fail dan memuatkan semula halaman, kandungan asal masih dipaparkan. Ini kerana fail yang diubah suai tidak dicache dengan betul oleh sistem pengendalian disebabkan oleh isu penyegerakan antara hos dan tetamu. Tingkah laku ini diperhatikan walaupun selepas keluar dan memulakan semula program.

Penyelesaian kepada masalah ini adalah untuk mengelak daripada menggunakan folder kongsi Kotak Maya semasa mengehos fail untuk http.FileServer. Dengan menyimpan fail pada sistem pengendalian tetamu secara langsung, isu penyegerakan dihapuskan, membolehkan pelayan fail cache fail dengan betul dan menyampaikan kandungan yang dikemas kini.

Atas ialah kandungan terperinci Mengapa My Go http.FileServer Melayan Fail Lapuk Apabila Menggunakan Folder Kongsi Kotak Maya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!