0

私のサーバーでは、私のルート ディレクトリは次のとおりです。

すべての公開ファイル (www ディレクトリ) は、home/public_html にあります。

わかりました、いくつかのファイルを www ディレクトリ以外の他のディレクトリに置きたいと思います。例: home/configs または home/php_classes

そして、wwwディレクトリのいくつかのファイルからそれらのディレクトリのファイルを含めたいと思います。

基本的に、home/public_html/index.php に、home/configs と home/php_classes にあるファイルを含めたい

私はもう試した:

include("../configs/site_config.php");
include("../php_classes/mailer.php");

include("/home/configs/site_config.php");
include("/home/php_classes/mailer.php");

しかし、それは機能しません。「そのようなファイルまたはディレクトリはありません」というインクルード警告を受け取り続けます

4

1 に答える 1

1

どちらの PHP コード スニペットも機能するはずなので、最初にファイルが実際に存在することを再確認してください

タイプミスがないことが確実な場合は、ほぼ間違いなくアクセス許可の問題です。PHP は Apache の下で実行されるため、Apache を実行するユーザーにフォルダーへのアクセス権を付与する必要があります。これを行う最も簡単な方法は、オペレーティング システムによって異なります。ここに、より詳細に掘り下げた回答があります: How do I give PHP write access to a directory? .

これが問題であるかどうかをテストするには、アクセスしようとしているディレクトリに、誰でも読み取り可能/実行可能 (755 など) のアクセス許可を一時的に再帰的に設定できます。のようなものchmod -R 755 /home/configs。それでも PHP が見つからない場合、問題は別の場所にあります。正当な理由がない限り、ディレクトリを誰でも読み取り可能または実行可能にしたくないため、問題を特定したらアクセス許可を絞り込んでください。

于 2012-11-11T21:07:09.650 に答える