2012-02-21 3 views
1

私はazureを初めて使っています。私はazure php sdkを使って私のアプリケーションを動かしています。これまでのチュートリアルはローカルマシン用になっています。クラウド上で実行しようとするとエラーが発生します。ここでは詳細は以下のとおりです。azure phpのインポート

私の簡単なPHPコード:

require_once('Microsoft/AutoLoader.php'); 

print 'Hello World'; 

このコードは、ローカルマシン上で完璧に動作します。私は、クラウド上でそれを実行しようとすると、私はこのエラーを取得:

Server error 
The website encountered an error while retrieving http://link234235345345.cloudapp.net/. It may be down for maintenance or configured incorrectly. 
Here are some suggestions: 
Reload this webpage later. 
HTTP Error 500 (Internal Server Error): An unexpected condition was encountered while the server was attempting to fulfill the request. 

私はこのようなimport文を削除してください:

print 'Hello World'; 

それは、クラウド上で完璧に動作します。

私の質問は、オートローダーを正しくインポートする方法です。私は雲の場所が違うと思う。これは、私がローカルで開発するたびに、クラウド上にインポートする際に常にインポート用のアドレスを変更する必要があることを意味しますか?

+1

は( '

require_once __DIR__ . '/../library/Microsoft/autoload.php 

:あなたの文を含んで

は、他のすべてのアプローチでは、私は唯一の__DIR__グローバルを使用してディレクトリを参照するように提案することができます-1)。 ini_set( 'display_errors'、true); ' - これは、PHPが元気なエラーメッセージを提供するのを助けるでしょう。これは役に立つかもしれません。それでも500のエラーが発生した場合は、エラーログを確認して、PHPが情報を提供している可能性があります。 – Charles

答えて

0

オートローダーはパッケージと共にインポートされている必要があります。 PHPのログから正確なエラーを取得するには、Webロールとしてリモートデスクトップ(RDP)を有効にする必要があります。

http://azurephp.interoperabilitybridges.com/articles/enable-remote-desktop

RDPのWebロールインスタンスへとPHPのインストールフォルダ内のphp.iniファイルからPHPのエラーログへのパスを検索します。エラーログには正確なエラーが含まれている必要があります。

0

ほとんどの場合、Microsoft SDKライブラリが見つかりませんでした。アプリケーションの作成方法に応じて、ライブラリの場所はおそらくローカル設定とは異なる場合があります。

composerを使用してプロジェクトにSDKを追加する場合は、コードの更新後にコンポーザパッケージをインストールするように展開する必要があります。 ?私はこれが

関連する問題