dosya-olsun-içeriği () dönen "failed to open stream: HTTP isteği başarısız oldu"

6 Cevap php

Yardım,

PHP kodu bir url arayarak sorunlar yaşıyorum. Benim PHP kodu bir sorgu dizesi kullanarak bir servisi aramak gerekir. Ben bir tarayıcı içine url yazarsanız, ok çalışır, ama ben arama yapmak için dosya olsun-içeriği () kullanın, ben alıyorum:

Uyarı: dosya-olsun-içeriği (http:// ....) failed to open stream: HTTP isteği başarısız oldu! HTTP/1.1 202 Kabul ...

Ben kullanıyorum kodu:

$query=file_get_contents('http://###.##.##.##/mp/get?mpsrc=http://mybucket.s3.amazonaws.com/11111.mpg&mpaction=convert format=flv');
echo($query);

Dediğim gibi - tarayıcı çağrı ve iyi çalışıyor. Herhangi bir öneriniz?

Ben de gibi başka bir url ile denedim

$query=file_get_contents('http://www.youtube.com/watch?v=XiFrfeJ8dKM');

Bu iyi çalışır ... i aramak gerekiyor url içinde ikinci bir http:// sahip olabilir?

Teşekkürler!

6 Cevap

CURL kullanmayı deneyin.

<?php

$curl_handle=curl_init();
curl_setopt($curl_handle, CURLOPT_URL,'http://###.##.##.##/mp/get?mpsrc=http://mybucket.s3.amazonaws.com/11111.mpg&mpaction=convert format=flv');
curl_setopt($curl_handle, CURLOPT_CONNECTTIMEOUT, 2);
curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl_handle, CURLOPT_USERAGENT, 'Your application name');
$query = curl_exec($curl_handle);
curl_close($curl_handle);

?>

Onlar amazonaws sayfa veya # # için belirtilen eğer ben, parametreleri (MPAction, biçimi) konusunda emin değilim. # #.

urlencode() url deneyin.

Ben benzer bir sorun var, ben youtube url ayrıştırılır. Kodu;

$json_is = "http://gdata.youtube.com/feeds/api/videos?q=".$this->video_url."&max-results=1&alt=json";
$video_info = json_decode ( file_get_contents ( $json_is ), true );     
$video_title = is_array ( $video_info ) ? $video_info ['feed'] ['entry'] [0] ['title'] ['$t'] : '';

Sonra $this->video_url boşluk içerdiğini biliyoruz. Ben çözüldü kullanarak trim($this->video_url).

Belki size yardımcı olacaktır. İyi şanslar

Ben URL boşluklar var olduğunu fark. Ben genellikle kötü bir şey olduğunu düşünüyorum. Ile URL kodlama deneyin

$my_url = urlencode("my url");

ve sonra çağrı

file_get_contents($my_url);

Daha iyi şans varsa ve görmek.