2016-10-27 3 views
1

私はUbuntu 14.04でNginxサーバを使用しています。私のコードはsymfony2で作成されています。file_get_contentsがうまく動作しない場合があります。

私はJsonレスポンスを返す単純なAPIを持っています。

私はのfile_get_contentsで別のページでこのページにアクセスしようとしています:

public function formAction() 


     $url = 'http://example.com/api/link/'; 
     $options = array(
      'http' => array(
       'header' => "Content-type: application/x-www-form-urlencoded\r\n", 
      ) 
     ); 


     $context = stream_context_create($options); 
     $result = file_get_contents($url, false, $context); 

     return ($result);   
    } 

しかし、時にはそれが動作しますが、時にはそれがありません! 私は周波数を見るためにループを作った:

それは63/100と250/1000のように見えます。それが動作しない場合

(平均値として)私はこのエラーを得た:

警告: のfile_get_contents(http://example.com/api/link/): は、ストリームをオープンに失敗しました:HTTPリクエストが失敗しました! HTTP /「1.1 404は、これは私がアマゾンのウェブサーバーに自分のインスタンスを再起動するときに発生し始めライン69

に /srv/www/path/to/my/file.php にはないので、私はドン今私はいくつかの設定を変更する必要があります知っている。私はカールを使用しようとしましたが、同じ問題です。

UPDATE

私はそれが常にすぐに動作し、ブラウザでページにアクセスしようとします。

+3

さて、あなたが得ました404というように、問題はあなたが与えたコードではなく、反対側にあるように見えます。 –

+1

あなたはまた何かをすることができます、あなたはこのエラーを取得したら再び同じことを呼んでいるかもしれません.. –

+0

Guzzle HTTPを見てください:http://docs.guzzlephp.org/en/latest/ –

答えて

0

私はそれが何であったかを発見:私のOVHで

は、私は私のDNSのIPv4のを変えホスティング。 しかし私はipv6を変更しませんでした。

ので、時々私は、サイトにアクセスしようとしたときに通話が右IPにリダイレクトされていた(パスがIPv4で示した)、時には古い間違ったもの(のIPv6で示す経路)

関連する問題