web-dev-qa-db-ja.com

イメージを提供する前に、Apacheがイメージをストレージドライブに完全に書き込まれるのを待つにはどうすればよいですか?

私はfswebcamを使用してウェブカメラから写真を撮り、/var/wwwに書き込み、だれでも私のWebサイトからそれらを表示できるようにします。

問題は、サーバーが遅いSDカードを搭載したRaspberry Piであることです。画像をSDカードに書き込むには数秒かかります。書き込み中にユーザーが画像をリクエストすると、画像の半完成バージョンが取得されます。

Apacheは、イメージが完全に書き込まれるのを待ってからそれを提供することはできますか?

3
Pikamander2

同じディスク内でのファイルの移動は、非常に迅速な(ほぼ瞬時の)操作です。それらをwwwに直接保存する代わりに、Apacheがそれらを見ることができない同じディスク上の別のディレクトリに保存します。次に、それらが完全に保存されたら、wwwの所定の場所に移動します。

1

Apacheについてはわかりませんが、ファイルが書き込まれているかどうかをスクリプト言語で検出できるはずです(おそらくファイルハンドルを使用しているのでしょうか?)

その後、ファイルが完了するのを待ってファイルを提供できます。

0