次の方法で共有


Azure でのWeb Appsに関するオープンソース テクノロジに関する FAQ

この記事では、Azure App ServiceのWeb Apps機能に関するオープンソース テクノロジに関する問題に関してよく寄せられる質問 (FAQ) に対する回答を示します。

この記事で Azure の問題に対処できない場合は、 MSDN と Stack Overflow の Azure フォーラムを参照してください。 これらのフォーラムで問題を投稿することも、 Twitter で@AzureSupportに投稿することもできます。 Azure サポート要求を送信することもできます。 サポート要求を送信するには、Azure のサポート ページで [サポートの利用] を選択します。

PHP ログを有効に操作方法、PHP の問題のトラブルシューティングを行いますか?

PHP ログを有効にするには、次の手順に従います。

  1. Kudu Web サイトにサインインします (https://*yourwebsitename*.scm.azurewebsites.net)。

  2. 上部のメニューで、[デバッグ コンソールCMD] を選択します>。

  3. [サイト] フォルダーを選択します。

  4. wwwroot フォルダーを選択します。

  5. アイコンを + 選択し、[ 新しいファイル] を選択します。

  6. ファイル名を .user.iniに設定します。

  7. .user.iniの横にある鉛筆アイコンを選択します。

  8. ファイルに次のコードを追加します。 log_errors=on

  9. [保存] を選択します。

  10. [wp-config.php] の横にある鉛筆アイコンを選択します。

  11. テキストを次のコードに変更します。

    //Enable WP_DEBUG modedefine('WP_DEBUG', true);//Enable debug logging to /wp-content/debug.logdefine('WP_DEBUG_LOG', true);
    //Suppress errors and warnings to screendefine('WP_DEBUG_DISPLAY', false);//Suppress PHP errors to screenini_set('display_errors', 0);
    
  12. Azure portalの Web アプリ メニューで、Web アプリを再起動します。

詳細については、「 WordPress エラー ログを有効にする」を参照してください。

App Serviceでホストされているアプリで Python アプリケーション エラーをログに記録操作方法。

アプリケーションの起動中に Python でエラーが発生した場合は、単純なエラー ページのみが返されます。 例えば、

内部サーバー エラーが発生したため、ページを表示できません。

Python アプリケーション エラーをキャプチャするには、次の手順に従います。

  1. Azure portalで、Web アプリで [設定] を選択します。

  2. [ 設定 ] タブで、[ アプリケーションの設定] を選択します。

  3. [ アプリの設定] で、次のキーと値のペアを入力します。

    • キー: WSGI_LOG
    • 値: D:\home\site\wwwroot\logs.txt (選択したファイル名を入力してください)

wwwroot フォルダーの logs.txt ファイルにエラーが表示されます。

App Serviceでホストされている Node.js アプリケーションのバージョンを変更操作方法。

Node.js アプリケーションのバージョンを変更するには、次のいずれかのオプションを使用できます。

  • Azure portalで、[アプリ設定] を使用します

    1. Azure portalで、Web アプリに移動します。

    2. [ 設定] ブレードで、[ アプリケーションの設定] を選択します。

    3. [ アプリの設定] では、キーとしてWEBSITE_NODE_DEFAULT_VERSIONを含め、必要な Node.js のバージョンを値として含めることができます。

    4. Kudu コンソール (https://*yourwebsitename*.scm.azurewebsites.net) に移動します。

    5. Node.js バージョンをチェックするには、次のコマンドを入力します。

      node -v
      
  • iisnode.yml ファイルを変更します。 iisnode.yml ファイルの Node.js バージョンを変更すると、iisnode で使用されるランタイム環境のみが設定されます。 Kudu cmd などのユーザーは、Azure portalの [アプリ設定] で設定されている Node.js バージョンを引き続き使用します。

    iisnode.ymlを手動で設定するには、アプリのルート フォルダーにiisnode.yml ファイルを作成します。 ファイルに次の行を含めます。

    nodeProcessCommandLine: "D:\Program Files (x86)\nodejs\5.9.1\node.exe"
    
  • ソース管理のデプロイ中に package.json を使用して 、iisnode.yml ファイルを設定します。 Azure ソース管理のデプロイ プロセスには、次の手順が含まれます。

    1. コンテンツを Azure Web アプリに移動します。

    2. Web アプリのルート フォルダーに既定のデプロイ スクリプト (deploy.cmd.deployment ファイル) がない場合に作成します。

    3. package.json ファイル エンジンで Node.js バージョンをメンションした場合にiisnode.yml ファイル>を作成するデプロイ スクリプトを実行します"engines": {"node": "5.9.1","npm": "3.7.3"}

    4. iisnode.yml ファイルには、次のコード行があります。

      nodeProcessCommandLine: "D:\Program Files (x86)\nodejs\5.9.1\node.exe"
      

App Serviceでホストされている WordPress アプリに "データベース接続の確立中にエラーが発生しました" というメッセージが表示されます。 このエラー操作方法トラブルシューティングしますか?

Azure WordPress アプリでこのエラーが表示された場合は、 php_errors.logdebug.logを有効にするには、「 WordPress エラー ログを有効にする」の詳細な手順を実行します。

ログが有効になっている場合は、エラーを再現し、ログをチェックして、接続が不足しているかどうかを確認します。

[09-Oct-2015 00:03:13 UTC] PHP Warning: mysqli_real_connect(): (HY000/1226): User 'abcdefghijk79' has exceeded the 'max_user_connections' resource (current value: 4) in D:\home\site\wwwroot\wp-includes\wp-db.php on line 1454

debug.logまたはphp_errors.log ファイルにこのエラーが表示された場合、アプリは接続数を超えています。 ClearDB でホストしている場合は、 サービス プランで使用できる接続の数を確認します。

App Serviceでホストされている Node.js アプリをデバッグ操作方法?

  1. Kudu コンソール (https://*yourwebsitename*.scm.azurewebsites.net/DebugConsole) に移動します。
  2. アプリケーション ログ フォルダー (D:\home\LogFiles\Application) に移動します。
  3. logging_errors.txt ファイルで、コンテンツをチェックします。

App Service Web アプリまたは API アプリにネイティブ Python モジュールをインストール操作方法。

一部のパッケージは、Azure で pip を使用してインストールされない場合があります。 パッケージが Python パッケージ インデックスで使用できない場合や、コンパイラが必要な場合があります (App Serviceで Web アプリを実行しているコンピューターではコンパイラを使用できません)。 App Service Web アプリと API アプリにネイティブ モジュールをインストールする方法については、「App Serviceでの Python モジュールのインストール」を参照してください。

Git と新しいバージョンの Python を使用して、Django アプリを App Service にデプロイ操作方法。

Django のインストールの詳細については、「App Serviceへの Django アプリのデプロイ」を参照してください。

Tomcat ログ ファイルはどこにありますか?

Azure Marketplaceおよびカスタムデプロイの場合:

  • フォルダーの場所: D:\home\site\wwwroot\bin\apache-tomcat-8.0.33\logs
  • 関心のあるファイル:
    • カタリナ。<yyyy-mm-dd>.log
    • host-manager。<yyyy-mm-dd>.log
    • Localhost。<yyyy-mm-dd>.log
    • マネージャー。<yyyy-mm-dd>.log
    • site_access_log。<yyyy-mm-dd>.log

ポータル のアプリ設定 のデプロイの場合:

  • フォルダーの場所: D:\home\LogFiles
  • 関心のあるファイル:
    • カタリナ。<yyyy-mm-dd>.log
    • host-manager。<yyyy-mm-dd>.log
    • Localhost。<yyyy-mm-dd>.log
    • マネージャー。<yyyy-mm-dd>.log
    • site_access_log。<yyyy-mm-dd>.log

JDBC ドライバー接続エラー操作方法トラブルシューティングしますか?

Tomcat ログに次のメッセージが表示される場合があります。

Web アプリケーション [ROOT] は JDBC ドライバー [com.mysql.jdbc.Driver] を登録しましたが、Web アプリケーションが停止したときに登録を解除できませんでした。 メモリ リークを防ぐために、JDBC ドライバーが強制的に登録解除されました

エラーを解決するには、次の手順に従います。

  1. app/lib フォルダーから sqljdbc*.jar ファイルを削除します。

  2. カスタム Tomcat または Azure Marketplace Tomcat Web サーバーを使用している場合は、この.jar ファイルを Tomcat lib フォルダーにコピーします。

  3. Azure portalから Java を有効にする場合 ([Java 1.8>Tomcat server] を選択)、アプリと並行するフォルダー内の sqljdbc*.jar ファイルをコピーします。 次に、次のクラスパス設定を web.config ファイルに追加します。

    <httpPlatform>
        <environmentVariables>
            <environmentVariablename ="JAVA_OPTS" value=" -Djava.net.preferIPv4Stack=true
    -Xms128M -classpath %CLASSPATH%;[Path to the sqljdbc*.jarfile]" />
        </environmentVariables>
    </httpPlatform>
    

ライブ ログ ファイルをコピーしようとするとエラーが表示されるのはなぜですか?

Java アプリのライブ ログ ファイル (Tomcat など) をコピーしようとすると、次の FTP エラーが表示されることがあります。

ファイルの転送中にエラーが発生しました [filename] リモート側からファイルをコピーできませんでした。

プロセスは別のプロセスによって使用されているため、ファイルにアクセスできません。

エラー メッセージは、FTP クライアントによって異なる場合があります。

すべての Java アプリにこのロックの問題があります。 アプリの実行中にこのファイルのダウンロードをサポートするのは Kudu だけです。

アプリを停止すると、これらのファイルへの FTP アクセスが許可されます。

もう 1 つの回避策は、スケジュールに従って実行され、これらのファイルを別のディレクトリにコピーする WebJob を記述することです。 サンプル プロジェクトについては、 CopyLogsJob プロジェクトを参照してください。

Jetty のログ ファイルはどこにありますか?

Marketplace とカスタムデプロイの場合、ログ ファイルは D:\home\site\wwwroot\bin\jetty-distribution-9.1.2.v20140210\logs フォルダーにあります。 フォルダーの場所は、使用している Jetty のバージョンによって異なります。 たとえば、ここで指定するパスは Jetty 9.1.2 用です。 jetty_<YYYY_MM_DD>.stderrout.logを探します。

ポータルのアプリ設定のデプロイの場合、ログ ファイルは D:\home\LogFiles にありますjetty_<YYYY_MM_DD>.stderrout.logを探します。

Azure Web アプリからメールを送信できますか?

App Serviceには組み込みのメール機能がありません。 アプリから電子メールを送信するための適切な代替手段については、こちらの Stack Overflow に関する説明を参照してください。

WordPress サイトが別の URL にリダイレクトされるのはなぜですか?

最近 Azure に移行した場合、WordPress は古いドメイン URL にリダイレクトされる可能性があります。 この問題は、MySQL データベースの設定が原因で発生します。

WordPress Buddy+ は、データベース内のリダイレクト URL を直接更新するために使用できる Azure サイト拡張機能です。

または、SQL クエリまたは PHPMyAdmin を使用してリダイレクト URL を手動で更新する場合は、「 WordPress: 間違った URL へのリダイレクト」を参照してください。

WordPress のサインイン パスワードを変更操作方法?

WordPress のサインイン パスワードを忘れた場合は、WordPress Buddy+ を使用して更新できます。

WordPress にサインインできません。 この問題操作方法解決しますか?

最近プラグインをインストールした後に WordPress からロックアウトされた場合は、プラグインに問題がある可能性があります。 WordPress Buddy+ は、WordPress でプラグインを無効にするのに役立つ Azure サイト拡張機能です。

WordPress データベース操作方法移行しますか?

WordPress Web サイトに接続されている MySQL データベースを移行するには、複数のオプションがあります。

操作方法WordPressの安全性を高めるのに役立ちますか?

WordPress のセキュリティのベスト プラクティスについては、「Azure での WordPress セキュリティのベスト プラクティス」を参照してください。

PHPMyAdmin を使用しようとしています。"アクセスが拒否されました" というメッセージが表示されます。この問題操作方法解決しますか?

このApp Service インスタンスで MySQL アプリ内機能がまだ実行されていない場合は、この問題が発生する可能性があります。 この問題を解決するには、Web サイトにアクセスしてみてください。 これにより、MySQL アプリ内プロセスなど、必要なプロセスが開始されます。 MySQL アプリ内が実行されていることを確認するには、[プロセス エクスプローラー] で、プロセスにmysqld.exe が一覧表示されていることを確認します。

MySQL アプリ内が実行されていることを確認したら、PHPMyAdmin を使用してみてください。

PHPMyadmin を使用して MySQL アプリ内データベースをインポートまたはエクスポートしようとすると、HTTP 403 エラーが発生します。 この問題操作方法解決しますか?

古いバージョンの Chrome を使用している場合は、既知のバグが発生している可能性があります。 この問題を解決するには、新しいバージョンの Chrome にアップグレードします。 また、インターネット エクスプローラーや Microsoft Edge など、問題が発生しない別のブラウザーを使用してみてください。

お問い合わせはこちらから

質問がある場合やヘルプが必要な場合は、サポート要求を作成するか、Azure コミュニティ サポートにお問い合わせください。 Azure フィードバック コミュニティに製品フィードバックを送信することもできます。