2015-06-14 3 views
0

Я пытаюсь добавить подписку с API-интерфейсом Instagram Realtime, устанавливая callback_url на управляемую страницу Yii (1.1.16), и каждый раз, когда API вызывает эту страницу, она получает ошибку сервера (500). На журнале апача я получаю это:Yii и Instagram подписка на подписку в реальном времени

173.252.114.111 - - [14/Jun/2015:10:09:35 +0000] "GET /site/instagram?hub.verify_token=mytoken&hub.challenge=XXX&hub.mode=subscribe HTTP/1.1" 500 341 "-" "Python-httplib2/0.8 (gzip)" 

Когда я изменить callback_url на страницу PHP без Yii (www.mydomain.com/instagram.php) работает без проблем.

173.252.114.111 - - [14/Jun/2015:09:53:08 +0000] "GET /instagram.php?hub.verify_token=mytoken&hub.challenge=XXX&hub.mode=subscribe HTTP/1.1" 200 200 "-" "Python-httplib2/0.8 (gzip)" 

код я использую в контроллере:

public function actionInstagram() 
{ 
    $this->layout = false; 
    echo $_GET["hub_challenge"]; 
    Yii::app()->end(); 
} 

Кто-нибудь знает, почему Yii дает эту ошибку?

+0

, показывающий, как выглядят правила вашего контроллера, может помочь – tinybyte

+0

Нет никаких добавленных правил, только SiteController расширен с CController двумя способами: actionIndex() и actionInstagram(). – nilsburg

ответ

0

Хорошо, я узнал, что происходит. Похоже, что Instagram RealTime API использует python httplib2 и не отправляет некоторые заголовки запросов, такие как HTTP_ACCEPT_LANGUAGE, и у меня были расширения, которые пытались получить $ _SERVER ['HTTP_ACCEPT_LANGUAGE'], поэтому php давал неопределенную ошибку индекса.

My bad!