PhpStorm 2019.3ヘルプ

一般的なデプロイの課題のトラブルシューティング

このセクションでは、PhpStormのデプロイに関する一般的な問題に対する解決策と回避策のリストを示します。

PhpStorm デプロイログの収集

このセクションで課題が解決しない場合は、サポートエンジニアにお問い合わせください。デプロイログの提供を求められた場合は、指示に従って(英語)収集します。

デプロイログを収集する

  1. メインメニューでヘルプ | デバッグログの設定を選択します。

  2. 開いているカスタム・デバッグ・ログの構成ダイアログで、発生している課題に応じて次の行を追加します。

    • デプロイ /同期に関する課題: #com.jetbrains.plugins.webDeployment

    • SSH / SFTPの課題に関する課題: #com.intellij.ssh

    Collect logs

  3. OKをクリックし、課題を再現してください。

  4. ヘルプ | エクスプローラーでログを表示(WindowsおよびLinuxの場合)またはヘルプ | Finder でログを表示(macOSの場合)を選択して、ログファイルを探します。

    必要に応じて、ログを手動で見つけることができます。

    構文
    %HOMEPATH%\.<product><version>\system\log
    サンプル
    C:\Users\JohnS\.PhpStorm2019.3\system\log
    構文
    ~/Library/Logs/<product><version>
    サンプル
    ~/Library/Logs/PhpStorm2019.3
    構文
    ~/.<product><version>/system/log
    サンプル
    ~/.PhpStorm2019.3/system/log

    最新のログファイルは idea.logという名前です。古いファイル名は数字、つまり idea.log.1 , idea.log.2などで終わります。ほとんどの場合、最新のものだけが必要です。

  5. ログファイルを課題(英語)またはフォーラムスレッド(英語)に添付します。

一般的なトラブルシューティング

デプロイが遅いか、失敗する

デプロイは、特にプロジェクトまたはデプロイサーバーに多数のディレクトリとファイルが含まれる場合、リソースを集中的に使用する操作になる可能性があります。設定/環境設定ダイアログ Ctrl+Alt+Sで、ビルド、実行、デプロイにナビゲートし、デプロイを高速化できる以下の構成オプションを調べます。

  • 不要なディレクトリをデプロイから除外します(たとえば、images)。これはデプロイ: 除外されたパスタブページから行うことができます。

  • オプションページで、最新のファイルを上書きするをクリアして、アップロードする必要がないファイルのアップロードをスキップします。

  • サーバーによっては、アドバンストFTP設定でのアクティブ転送モードとパッシブ転送モードの切り替えが役立ちます。これは、サーバーのデプロイ: 接続タブパッシブ・モードを切り替えることで実行できます。

  • 同時FTP接続の数を制限します。これは、サーバーのデプロイ: 接続タブ制限する同時接続数 をトグルして接続数を設定することで可能です(より多くの接続で問題が発生した場合は、通常3〜5台の同時接続で問題ありません)。

ダウンロード/アップロードアクションは利用できません

マッピングの欠落のため、ダウンロード/アップロード操作が利用できない場合があります。ダウンロードしたいファイルまたはフォルダーがマッピングで設定されていない場合、PhpStormはそれをダウンロードしません。マッピングは、プロジェクトフォルダーをサーバー上のフォルダーにマップし、URLアドレスにアクセスしてアクセスするに従って構成できます。

一部のアクションでは、設定/環境設定ダイアログのデプロイページでデフォルトのデプロイサーバーを選択する必要があります。

一部のフォルダーはデプロイされません

デプロイされていないフォルダーの一般的な原因は、明示的に除外されている場合です。これを解決するには、リモートホストツールウィンドウで指定のフォルダーを右クリックし、コンテキストメニューから除外パスを削除するを選択します。これが完了すると、フォルダーがデプロイされます。

これは、設定/環境設定ダイアログ Ctrl+Alt+Sデプロイページからも構成できます。サーバーの除外パスタブを開き、除外されたパスを削除します。ソースとターゲットの両方のフォルダーをチェックする必要があることに注意してください。オプションページのアイテムを名前で除外するにある名前でフォルダーを除外することもできます。

プロジェクト間でのデプロイ構成の共有

デプロイサーバーはIDEレベルで構成されています。これらのサーバーはすべてのプロジェクトで使用でき、それらの間で共有できます。

プロジェクト間で名前と接続の詳細(デプロイ: 接続タブタブで指定)のみが共有されることに注意してください。マッピングと除外パスはプロジェクト固有のものであり、別々に設定する必要があります。このアプローチを使用すると、接続の詳細を一度入力するだけで、プロジェクトごとにマッピングと除外パスを設定し、接続の詳細を共有することができます。これは、プロジェクトが同じデプロイサーバーを共有し、同じ接続設定を使用する場合に便利です。プロジェクト間で接続設定が異なる場合は、プロジェクトごとに個別に設定する必要があります。

必要に応じて、デプロイ: 接続タブこのプロジェクトでのみ表示する チェックボックスをオンにして、1つのプロジェクトでサーバーを表示するように設定できます

IDE設定ではマッピングを設定できません

デフォルトの新しいプロジェクト設定は、新しいプロジェクトのデフォルト設定を構成するために使用され、現在開いているプロジェクトには影響しません。現在のプロジェクトの設定を構成するには、設定/環境設定ダイアログ Ctrl+Alt+Sを使用します。

同じフォルダー内のサブフォルダーは、異なるデプロイ設定を持つことができますか?ローカルフォルダーを複数の場所にデプロイできますか?

フォルダーをアップロードしてマッピングを構成するときは、次の点に注意してください。

  • 特定のフォルダーのマッピングをデプロイサーバー上の異なるパスに指定できます。これは、サーバーのデプロイ: マッピングタブで設定できます。

  • 特定のフォルダーとファイルをアップロード/ダウンロードから除外することができます。これは、サーバーのデプロイ: 除外されたパスタブで設定できます。

  • 同じフォルダー(または複数のサブフォルダー)を異なるサイトに一度にアップロードすることはできません。個別のデプロイ構成を作成し、各サイトに1つずつアップロードする必要があります。

これを実行したい場合は、有能なツールを使用してプロセスを自動化することをお勧めします。例:PhingにはPhpStormから使用できるFTPタスクがあります。PhpStorm内では、デプロイ済みと同期... コマンドを使用して、アップロードごとに利用可能なデプロイサーバーを選択できます。

マイサーバーに配置して同期メニュー項目にキーボードショートカットを割り当てることができません

キーボードショートカットを<サーバー名>にデプロイされたものと同期 コマンドに直接割り当てることはできません。一般的なデプロイ先と同期...コマンドにのみ割り当てることができます。これにより、ポップアップメニューにサーバーのリストが表示されます。詳細はキーボードショートカットの構成を参照ください。

特定のデプロイサーバーにキーボードショートカットを割り当てる場合は、マクロを記録して代わりにショートカットを割り当てることができます。

  1. 編集 | マクロ | マクロの記録を開始を選択し、マクロの記録を開始します。

  2. ツール | デプロイ | デプロイ先と同期 <server name>を選択し、同期ウィンドウを閉じます。

  3. メインメニューから編集 | マクロ | マクロの記録を停止を選択してマクロの記録を停止してください。

  4. マクロ名を設定します(例:<サーバー名>と同期)。

  5. 設定/環境設定ダイアログ Ctrl+Alt+Sで開き、キーマップを選択してマクロノードを見つけます。記録したばかりの新しい同期マクロのコンテキストメニューから、キーボード・ショートカットの追加 を選択し、目的のショートカットを指定します。

PhpStormを使用してデータベースをデプロイするにはどうすればよいですか?

PhpStormを使用してデータベースをデプロイするには、いくつかの方法があります。

アップロードが行われる前に、ファイル上でスクリプトや実行ファイルを実行できますか?

CSSの縮小、イメージの最適化、IonCube(英語)を使用したPHPファイルのエンコードなどは、アップロードが行われる前に実行したいアクションです。これを行うための最善の方法は、PhpStormのファイル監視を使用して、アップロードが開始されたときではなく、ファイルが変更されたときに実行することです。デプロイサーバーにアップロードする時が来たら、代わりに処理済みファイルをアップロードしてください。

これが機能するには、オプションページで外部変更をスキップするチェックボックスをオフにする必要があることに注意してください。

ファイルが自動的にアップロードされないことがある

デフォルトでは、PhpStormはいくつかの外部プロセス(VCS、transpilerなど)によってファイルが変更された場合にそれらのファイルをアップロードします。ファイルがアップロードされていない場合は、オプションページの変更されたファイルのデフォルト・サーバーへの自動アップロード 常時に設定され、外部変更をスキップするチェックボックスがオフになっていることを確認してください。

デプロイ前またはデプロイ後のアクションを実行できますか?

実行/デバッグ構成を使用することが可能です。偽の実行/デバッグ構成、または最後のステップである実行/デバッグ構成を作成し、起動前に必要なステップを追加できます。

代わりに、Phingまたは他のビルドシステムを使用して複雑な一連のステップを実行することをお勧めします。

FTPのトラブルシューティング

FTPの課題: 無効な子孫ファイル名 "http:"

デプロイサーバーが構成されているとき、またはプロジェクト設定で接続のテストボタンを使用しているときは、無効な子孫ファイル名 "http:"エラーが表示されます。名前にコロン : を含むすべてのファイル名は無効と見なされます。

これは、その名前に http: を含むファイルがプロジェクトに存在する場合に発生します。PhpStormがFTPに接続するために使用するライブラリ(Apache Commons VFS)は、そのようなファイルを含むフォルダーの内容を読み取ることができないため、操作が失敗します。唯一の解決策は、その名前の http: を含むファイルをプロジェクトから削除することです。

PhpStormはサーバーに接続しているようですが、ファイルの一覧表示やアップロードはできません

これは、デプロイサーバーがいわゆるパッシブFTP接続を必要とするためです。このモードを設定するには、選択したサーバーのデプロイ: 接続タブパッシブ・モードチェックボックスを選択します。

同時のFTP接続の数を制限することも、このような場合に役立ちます。これを行うには、選択したサーバーのデプロイ: 接続タブを開き、制限する同時接続数チェックボックスを選択し、接続数を設定します(通常、3〜5の同時接続は、より多くの接続で問題が発生した場合は任意のサーバーでOKです)。

Git checkoutを使用してブランチを変更するときのファイルのデプロイ

Git checkoutを使用してブランチを切り替えるときにファイルをデプロイするには、いくつかの方法があります。

  • 1つの方法は、ファイルと外部の変更を常にアップロードするようにデプロイを設定することです。これを行うには、オプションページで変更されたファイルをデフォルトサーバーにアップロードする常時に設定し、外部変更をスキップするチェックボックスをオフにします。ブランチを切り替えると、すべてのファイルがサーバーにアップロードされます。

  • git-ftp(英語)を使用してください。最小のアップロードを実行し、ファイルとディレクトリの削除をミラーリングすることもできます。

既知の問題

ファイルとフォルダーをデプロイサーバーと同期するためにrsyncがサポートされていますか?

いいえ。これがこの課題(英語)に対するPhpStorm投票の一部であると思われる場合。
最終更新日: 2020年1月14日

関連ページ:

アプリケーションをデプロイする

PhpStormは、すべての開発、デバッグ、およびテストがコンピューター上で行われたことを前提としており、コードは実稼働環境にデプロイされています。この「ローカル開発 - デプロイ」モデルに固執する理由は、PhpStormがコード補完、コードインスペクションと検証、コードナビゲーションなどを含むコ...

プロジェクトとIDEの設定

PhpStormでは、プロジェクトレベルとIDEレベルの2つのレベルで設定と構造を構成できます。プロジェクトレベルの設定と構造:プロジェクトレベルの設定と構造は現在のプロジェクトにのみ適用されます。これらの設定は他のプロジェクトファイルと一緒に.ideaディレクトリに保存されます。プロジェクトがバー...

キーボードショートカットの構成

PhpStormには定義済みのキーマップが含まれており、頻繁に使用するショートカットをカスタマイズできます。キーマップ構成を表示するには、設定/環境設定ダイアログ を開き、キーマップを選択します。PhpStormはあなたの環境に基づいて自動的に事前定義されたキーマップを選択します。使用しているOS...

ファイル監視

ファイル監視は組み込みのPhpStormツールで、IDEでファイルを変更または保存するときにコンパイラ、フォーマッタ、linterなどのコマンドラインツールを自動的に実行できます。ファイルウォッチャーには2つの専用コードインスペクションがあります。ファイル監視使用可能インスペクションは、あらかじめ定...

リモートホスト上の個々のファイルの編集

リモートホストとの同期を設定すると、ローカルプロジェクトに追加/ダウンロードすることなく、リモートホストから直接個々のファイルを開いてPhpStormで編集できます。そのようなファイルでは、デバッグ、リファクタリング、およびその他のPhpStorm機能はサポートされていません。高度なPhpStorm...

チュートリアル: PhpStormでデプロイ

このチュートリアルでは、PhpStormを使用して、コードのデプロイをリモートホストに設定する手順を順を追って説明します。デプロイサーバーの設定:メインツールバーのをクリックするか、 を押して設定/環境設定ダイアログを開き、デプロイページを選択します(メインメニューからを選択すると、同じページにアク...