2012-10-10 59 views
0

我正在使用Ray Wenderlich APNS php腳本來推送APS消息。當我從服務器上的命令行調用它時,該腳本正常工作。但是,當我從應用程序調用它時,它什麼都不做。我正在使用蘋果沙箱地址的開發應用程序。同樣,當我從命令行調用相同的腳本時,它會立即發送消息,但是從應用程序調用php文件不會導致任何結果。APNS只能通過命令行工作

命令行是否允許php打開連接到APNS服務器和php路由阻止連接?

使用命令行: C:\ PHP \ php.exe的-f 「d:\目錄\網站\ PHP \ commentPush.php」 連接到APNS 郵件成功送達

使用我的應用程序: NSString * strPush = [NSString stringWithFormat:@「http://www.mysite.com/php/commentPush.php」];

*注 - 我使用相同的技術和字符串爲我所有的服務器端php執行成功。

+0

您可以使用(http://www.charlesproxy.com/documentation/faqs/using-charles-from-an-iphone/)作爲iphone的代理,以查看從設備發出的確切內容(或缺乏)。 –

回答

5

你應該檢查你的PHP配置文件,瞭解命令行配置和服務器模塊配置之間的差異。

http://www.php.net/manual/en/configuration.file.php

沒有看到你的PHP代碼,我將通過在fopen_url配置參數首先查看啓動。此外,您是否在服務器日誌中收到任何錯誤或警告?

+0

解決:我添加了這一行到我的應用程序:NSLog(@「Error =%@」,strResult); 返回錯誤「無法找到套接字傳輸」ssl「 - 您是否忘記在配置PHP時啓用它?」 我已經在php.ini中啓用了openssl擴展。這導致我有一個鏈接,讓我添加:libeay32.dll和ssleay32.dll從C:\ PHP \ ext到C:\ WINDOWS \ system32 \ inetsrv 我重新啓動IIS服務,一切正常! – trifocal3