2016-12-22 27 views
7

aşağıdaki hatayı alıyorum:PHP getimagesize - Akış açılamadı. Kötü istek

getimagesize(https://static1.squarespace.com/static/570d03d02b8dde8b2642afca/570f74e87c65e4819dec6812/57272dbfb6aa606f78a5d8b5/1470397291105/4XTRYCK3.jpg): failed to open stream: HTTP request failed! HTTP/1.1 400 Bad Request

görüntü Tarayıcımdaki sorunsuz açılır.

Bunun neden başarısız olduğunu bilen var mı?

+0

[bu post] (http://stackoverflow.com/questions/23193870/php-function-getimagesize-gives- read-to-get-to-get-https-url) size yardımcı olabilir – dpp

+0

Bu inanılmaz derecede garip. Sadece tekrar test ettim, şimdi bir URL çalışıyor (hem HTTP hem de HTTPS). Ama benzer bir deneyin, hem HTTP hem de HTTPS için tekrar aynı şekilde başarısız olur. Örneğin: https://static1.squarespace.com/static/570d03d02b8dde8b2642afca/570f74e87c65e4819dec6812/57272d96b6aa606f78a5d80a/1470397194245/4XTRYCK2.jpg – alieninlondon

+0

@dpp Ayrıca, bahsettiğiniz yazının çözümü de aynı şekilde başarısız görünüyor. – alieninlondon

cevap

4

Squarespace, User-Agent üstbilgisinin bir web tarayıcısı olmadığı herhangi bir bağlantıyı reddediyor. Bu CURL ve görüntülemeyi içerir.

Sen koduna bu ekleyerek kullanıcı aracısı başlığını ayarlayabilirsiniz

:

ini_set('user_agent','Mozilla/4.0 (compatible; MSIE 7.0b; Windows NT 6.0)'); 
+0

Bu benim sorunumu çözdü! Ek olarak, sunucu geçerli bir kullanıcı aracısını hatırlıyor/önbelleğe alıyor gibi görünüyor. Ben yukarıdaki gibi ini_set olmadan getimagesize ilk çalıştırdığınızda, olması gerektiği gibi blokları, ini_set ile çalıştığı zaman yukarı çalışın, ve son komik şey, ini_set'i kapattığımda getimagesize kapattığımda birkaç gün/saat çalışıyorum. orijinal hataya dönene kadar emin olun. Bunu açıklayan var mı? Önemli değil, sadece meraklı. – alieninlondon