2016-04-04 26 views
1

WebサイトでSparkPostを使用してメール配信サービスを実装しました。コードは次のようになります。PHPコードはローカルではなくAzureで動作しません

require '/vendor/autoload.php'; 

use SparkPost\SparkPost; use GuzzleHttp\Client; 
use Ivory\HttpAdapter\Guzzle6HttpAdapter; 
$httpAdapter = new Guzzle6HttpAdapter(new Client()); 
$sparky = new SparkPost($httpAdapter, ['key'=>'...']); 
[...] 
[...] 
$results = $sparky->transmission->send($mailarray); 

これはWampServer上でローカルで正常に動作しますが、Azureに展開すると正しく動作しません。私は、Azureのログへのアクセスを持っていないが、私は1行に問題を絞り込むために管理:私は単に他の説明もなく500エラーが出る

$sparky = new SparkPost($httpAdapter, ['key'=>'...']); 

。奇妙なことは、私がtry/catchの周りにそれをラップするときです、私はまだ空白の画面とコンソール上の500以外何も得られません。私は/autoload.phpで何かをロードできないことがあると思う。

どのような考えですか?

+0

500の詳細については、エラーログを確認してください。PHPのすべてがtry/catchedできるわけではありません。致命的な解析エラー。 –

+0

PHPで表示されない、または上記の何かが原因で/別のページに空白が表示される可能性があります。あなたは無限ループのどこでもループしていますか? – KDOT

+0

whileループはありません。 –

答えて

1

https://github.com/SparkPost/php-sparkpost/blob/master/composer.json#L18のGithubリポジトリのSparkPost libの要件によると、5.5より高いPHPバージョンが必要です。したがって、Azure Web AppsのPHPバージョンを変更することができます。詳しくは、https://azure.microsoft.com/en-us/documentation/articles/web-sites-php-configure/#how-to-change-the-built-in-php-versionを参照してください。

+0

私はコメントの原因としてPHPのバージョンを提案しました。私は最終的にそれが原因であることを確認したので、私はあなたの応答を正しい答えとしてマークしています。 –