2

私のプロジェクトのディレクトリ構造は次のようになっています:-

/var/www/includes/
/var/www/classes/

/var/www/public/css/
/var/www/public/js/
/var/www/public/index.php

webrootは/var/www/publicであるため、テストドメインにアクセスすると、ディレクトリlocalhost.dev内のファイルが提供されるpublicため、が実行され/var/www/public/index.phpます。のようにアクセスする必要はありませんlocalhost.dev/public/index.php

問題は、Netbeansでプロジェクトを作成するときに、xdebugとNetbeansを使用してプロジェクトをデバッグできるようにインデックスファイルを設定する必要があることです。

したがって、プロジェクトを追加するときは/var/www、プロジェクトソースフォルダー(Sources Folder)として提供し、このフォルダーにincludesあります。classes次のプロジェクト構成画面( )で、とChoose Project > Name and Location > file path is taken as Run Configurationを求められます。ファイルは実際にはの下にあるので、ファイルを参照して選択すると、インデックスページへのURLが単なるの代わりに使用されます。これにより、プロジェクトをデバッグできなくなります。Project URLindex fileindex.php/var/www/public/localhost.dev/public/index.phplocalhost.dev/index.php

すべてのソースファイルがWebルートになく、プロジェクトがxdebugを使用してデバッグされる場合に、プロジェクトをNetbeansに追加する方法を誰かが指摘できますか。

4

4 に答える 4

0

すべてのプロジェクト ファイルを に直接配置するのは悪い習慣だと思います/var/www

実際に展開されたプロジェクトでは決して見られないと思います。したがって、私の最初の推奨事項は、プロジェクトの構成方法を変更することです。それが不可能な場合は、Netbeans/var/www/publicでプロジェクト フォルダーとして選択します。

Netbeans が 内のフォルダーへの参照を必要とする場合は/var/www、 public 内に 内のフォルダーを参照するシンボリック フォルダーを作成します/var/www

あなたが持っている最後のリソースは、Apache で書き換えルールを作成してlocalhost.dev/publicと同じにすることlocalhost.devです。これについては、Apache ドキュメントを参照してください。

于 2012-06-14T18:56:30.827 に答える
0

/var/www/public をプロジェクト フォルダー (netbeans プロジェクト フォルダーを含む) として設定し、プロジェクト プロパティに /var/www/includes/ および /var/www/classes/ をグローバル インクルード ディレクトリとして含めます。または、PHPStorm を使用するのが最善の方法です。

于 2016-03-23T06:17:38.743 に答える
0

より良い方法は見つかりませんでしたが、次の手順を使用します。

  1. メニュー:プロジェクトのプロパティ-> リンク:実行構成-> ボタン:詳細設定
  2. URL のデバッグ、選択:毎回確認する
  3. パス マッピング、サーバー パス: http://localhost.dev/、プロジェクト パス: /var/www/public/

ここで、デバッグ プロセスを開始すると、Netbeans は [ Specify URL ]ポップアップを表示します。これをhttp://localhost.dev/public/index.phpからhttp://localhost.dev/index.phpに変更できます。

于 2013-07-28T22:29:04.497 に答える
0

私のセットアップでは、ローカル開発サーバーのリモート サイトを使用しています。プロジェクトのプロパティの「実行構成」ウィンドウで、「実行者」を「リモート Web サイト (FTP、SFTP)」に設定しました。これが私の回答の情報に影響を与えるとは思いませんが、念のため言及しています。

プロジェクト プロパティの [ソース] ウィンドウに移動し、[Web ルート] のエントリを見つけて、[参照] をクリックし、/var/www/publicディレクトリを選択します。これにより、xDebug がlocalhost.dev/index.phpを使用するようになります。[実行構成] ウィンドウに移動してインデックス ファイルを参照すると、参照ウィンドウが「www」ではなく「public」で開始されることに気付くでしょう。

このタイプの構成に関する重要な注意事項は、私に大きな不満を引き起こしました。

xDebug を使用する場合、ブレークポイントを設定して、Web ルート (パブリック) ディレクトリの外部にあるファイルを操作できるようにする必要があります。Web ルートを に設定したため、または/var/www/publicのファイルを操作することはできません。/var/www/includes/var/www/classes

必要なことは、Web ルートの外側にあるファイルをグローバル インクルード パスに追加することです。

グローバル インクルード パスにディレクトリを追加する方法は 2 つあります。どちらを使用するかは、プロジェクトの構成方法によって異なります。

あなたの場合、外部ディレクトリはプロジェクトに含まれているため、「オプション」インターフェイスを介して追加する必要があります。[ツール] -> [オプション] に移動し、[PHP] タブを選択してから、フォルダー/var/www/includes/var/www/classesフォルダーをグローバル インクルード パスに追加します。

ファイルをグローバル インクルード パスに追加するもう 1 つの方法は、プロジェクト ソース フォルダーの外部にあるファイル用です。のようなディレクトリの場合/var/folder_outside_www/、プロジェクト プロパティの [PHP インクルード パス] ウィンドウを使用します。

于 2012-09-01T15:28:16.200 に答える