ホームページ  >  に質問  >  本文

異なるフォルダーの異なる場所にある PHP ファイルを含める方法

<p>私のサイトの大部分はルート ディレクトリにあります。このディレクトリには、「css」、「functions」、「images」フォルダーがあります。 php ファイルをindex.phpまたは他のルートファイルに含めると、すべてが正常に動作します。含まれており、正しく実行されます。 </p> <p>しかし、「blog」というフォルダーを作成するときに問題が発生します。これは、CMS と独自の「ルート」ファイルを含む、まったく新しい別のルート フォルダーです。メインルートから css を含めたり、メインルートの「functions」フォルダーから php ファイルを含めようとすると、すべてがクラッシュします。 <code>../functions/myfile.com</code> を使用してインクルードする必要があることはわかっています。ただし、このファイルには他のファイルも含まれているため、機能せず、他のファイルが正しくインクルードされません。 </p> <p>この問題を解決する方法はありますか? </p>
P粉447002127P粉447002127447日前514

全員に返信(2)返信します

  • P粉976737101

    P粉9767371012023-08-22 16:44:45

    私の理解が正しければ、フォルダーが 2 つあり、1 つは include をもう 1 つのフォルダーに含めたい php スクリプトの場所です。

    この場合は、パスを正しくたどるだけで済みます。 フォルダー構造が次のようになっていると仮定します:

    リーリー

    これがあなたが思いついたフォルダー構造で、「Script.php」ファイルを「index.php」フォルダーに含めたい場合は、次のように含める必要があります:

    リーリー

    私のやり方は視覚的にです。 (ファイル構造を確認するために)index.php の上にマウス ポインターを置き、フォルダーを 1 つ上に移動するたびに、「../」をさらに入力します。次に、開始したいフォルダーの上のフォルダー構造に移動することを確認する必要があります。その後は通常のフォルダー階層になります。

    返事
    0
  • P粉614840363

    P粉6148403632023-08-22 09:38:21

    $_SERVER['DOCUMENT_ROOT'] を使用して、各サイト内から ルート ディレクトリ にアクセスできます。 テストのために、パスを出力して、正しく動作しているかどうかを確認できます。 正しい方法で実行しているかどうか。 ローカル サーバーのパスは絶対に表示したくないでしょう (例: contains requires )。

    サイト 1

    リーリー

    サイト 1 に含まれるファイルは次の場所にあるはずです:

    リーリー

    サイト 2

    リーリー

    サイト 2 から サイト 1 のインクルード ファイルにアクセスするための実際のコード :

    リーリー

    ドキュメント ルート および root スラッシュを除外してファイルにアクセスしようとすると、クエリが実行されるファイルの相対 パス のみがアクセスされます。使用できます (絶対的な信頼性または非プラットフォーム固有ではありません):

    リーリー

    含まれるパスは、サイトのフロントエンド (オンライン) のコードには存在しないため、 運用環境でのみ安全に使用する必要があります

    さらに、サイト自体の URL については、ドメイン名を基準とした相対 URL にすることができます。ブラウザは、どのページを見ているかを知っているため、残りを自動的に埋めます。したがって、次のようなものは使用しないでください:

    リーリー

    代わりに次を使用してください:

    リーリー

    優れた SEO を実現するには、ブログの URL が別のドメインに存在しないようにする必要があります。存在しないと、重複サイトとしてマークされる可能性があります。この場合、robots.txt ファイルに サイト 1 に限定される行を追加することもできます:

    リーリー

    その他の可能性:

    IP アドレスを見つけて 、次のコード スニペットを含めます:

    リーリー

    ISP が IP を変更した場合 (たとえば DCHP 動的 IP を使用している場合)、結果を確認するにはこのファイル内の IP を変更する必要があることに注意してください。 that ファイルをインクルード ファイルに入れて、デバッグ ページでそれを要求することをお勧めします。

    ブラウザの コンソール ログ などの最新の方法にアクセスできる場合は、次のコードを使用して、ブラウザのデバッグ インターフェイスで表示できます。 リーリー

    返事
    0
  • キャンセル返事