Destekleyici HTTP 100 PHP ile devam

1 Cevap php

Ben özel müşterilerinden gelen büyük Yayınlanan dosya yüklemeleri kabul ve dosya HTTP/1.1 100 kullanılarak yüklenen önce (çeşitli başlıkları ve diğer faktörler, sadece boyutuna göre) bu yüklemeleri kabul ya da reddetmek istiyorum bir PHP webapp üzerinde çalışıyorum devam edin.

Bazı hızlı arka plan HTTP/1.1 spec 8.2.3:

100 (Devam) durumunun amacı (bölüm 10.1.1 bakınız) kökenli sunucu (istek başlıklarına göre) isteğini kabul etmeye istekli olup olmadığını belirlemek için bir istek gövde ile bir istek mesajı gönderen bir istemci izin vermek için müşteri istek gövdesini göndermeden önce. Sunucu vücudun bakmadan mesajı reddetmek eğer istemci vücut göndermek için bazı durumlarda, ya uygunsuz ya da son derece verimsiz olabilir.

Sorun Apache Expect olduğunu görür: istemci 100-devam, 100 Devam verir ve PHP işleme başlamadan önce dosya yüklediğiniz tüm kabul ... Ancak ben hemen Bekler sonra işleme başlamak için PHP gerekir: 100-devam. Ben bu yüzden iki soru var bu mümkün olup olmadığından emin değilim:

  1. 100-devam: PHP Expect hemen sonra işleme başlamak yapmak mümkün mü?
  2. Eğer değilse, iyi bir alternatif nedir?

Şu anda müşteri ilk POST olarak aynı başlıkları ile bir HEAD isteği göndermek belirterek devam 100 öykünen düşünüyorum. Webapp sonra POST veya bir hata kodu ile devam etmek için bir yanıt dönebilirsiniz. Diğer önerilerinizi bekliyoruz!

1 Cevap

HTTP düzeyde bu yapmaya çalışıyorum çok zor görünüyor. Bir geliştirici belirli bir çözüm kafayı değil gibi önemlidir. Sorun Eğer yükleme işlemek önce çek bir dizi yapmak istiyorum. Yapmanız gereken tüm yüklemeden önce bir eleme sayfası konur. Bu çeklerin dizi geçmek ve hak Bu eleme sayfa sadece onlara yükleme formu gösterecektir. Bu size kod PHP bunu yalnızca yapmaya çalıştığınız tam olarak ne olduğunu. Mümkünse, HTTP 100 şey, her zaman, böylece daha sonra destek için bir baş ağrısı yaratıyor, ek yapılandırma sürü gerektirir. Eğer kodda bunu yaparsanız (birkaç yıl içinde ya da kendinize) arkandan gelenler açıkça uygulaması ne yaptığını anlamak mümkün olacaktır.