Birden http sunucusu aracılığıyla ikili veri aktarımı nasıl?

2 Cevap php

Peki, soru şu büyük olması amaçlanmıştır değildir. Bana senaryoyu anlatalım: İki http sunucuları var. sunucu B sunucu B yerel diskinizde bazı büyük jpeg görüntü oluşturmak Keşke sunucu A. tarafından ulaşılabilir iç sunucu ve sunucu A doğrudan sunucu B'nin dosya sistemine erişmek için bir yol varken sunucusu Bir web tarayıcısı tarafından son kullanıcıya erişilebilir , son kullanıcı öncelikle geçici sunucu A'da bu görüntü verilerini saklamak olmayanlar görüntü görelim nasıl?

Ben sunucu B sunucu A ve perl üzerinde PHP çalıştırmak, ama bu önemli değil. Ben bu uygulama için genel bir desen gerekir.

2 Cevap

Açıkçası biz sadece sunucu A görüntüye teslim olanlar yolunu ve sonunda son kullanıcıya olamaz.

Ben gitmek için tek yol olduğunu düşünüyorum, ama fiziksel PHP sunucu A'da dosyaları kaydetmek gerekmez: sunucusu Bir dosya sistemi düzeyinde (yani, bir ağ paylaşımından) üzerinde sunucu B konuşabilirsiniz varsa, sunucu A almak olabilir sunucu B ve kullanıcıya geçmesine gelen veriler:

header("Content-type: image/jpeg"); // Make sure you send the right headers
$file = fopen("/path/to/server/b/huge/image.jpg", "r");
fpassthru($file);  // or deliver chunks using fread()
fclose($file);

Sadece bir iç http bağlantısı varsa, gibi bir şey için 2 hat değiştirmek istiyorum

$file = fopen("http://serverb.local/huge/image.jpg", "r");

Bu yöntem sizin veya kurmak için uygun olmadığı için çok yavaş ise, (S), FTP, SCP ya da benzer bir şey kullanmak gerekir. FTP PHP natively mevcuttur; Diğer protokoller sadece exec() kullanarak PHP script aramak için muhtemelen en kolay olanlardır.

senaryo ve kullanım sıklığına bağlı olarak, bu işlemi her zaman tekrar edilmesi zorunda kalmaması, Sunucu A önbelleğe çeşit istihdam etmek isteyebilirsiniz.

Lütfen sunucular veri merkezlerinde barındırılan, aralarında trafik çok pahalı ücretsiz ya da değil emin olun.

Bu benim kullanıcı bu sunucu A. tıkanma olmadan bir görüntüyü "görmek" izin aklınıza leanest yoludur

Orada çözüm bir sayı ne kadar kontrol bağlı olduğunu ve sadece nasıl izole sunucu B sunucu a dan

Tek yönlü sunucu A. Sunucu A ile paylaşılan bir ağ birimde görüntüleri oluşturmak için sunucu B için salt okunur olurdu erişimi güvenlik biraz sağlamaktır. Sonra sunucu bir doğrudan söz dosyalara erişebilirsiniz. Sadece ekstra havai ağ sürücüsü olarak sunucu A'da bir geçiş programı yazma üzerinde avantajları, hızlı olma olasılığı olduğunu ve sunucu B sunucu a tamamen izole kalmasını sağlar

Bu, sunucu A onlar sadece orada olduğunuzu, sunucu B görüntüler oluşturmak istemek gerekmez kabul etmez.