0

ドキュメント ルートの上のページに移動するために、header() を使用しようとしています。XAMPP を実行しているので、htdocs の上のスクリプトを呼び出そうとしています。

私の問題は、404 エラーが発生し、ドキュメントが見つからないことです。

私の質問: ドキュメント ルートの上でスクリプトを呼び出すために header() を使用できますか、それとも include() を使用してこれを達成する方がよいですか?

私は良い php プログラマーになろうとしていて、パスワードとデータベースへのアクセスを含むすべてのスクリプトを htdocs フォルダーの上に保持しようとしていました。

前もって感謝します。

4

4 に答える 4

4

いいえ、できません。ドキュメント ルートより上のものには URL がないため、それは不可能です。ルート以下のファイルでインクルードを使用したい。

すべてのパスワード ファイルをルートの上に置く理由は、ユーザーが URL を使用してアクセスできないようにするためです。これは、URL を使用してリダイレクトできないことも意味します。

于 2009-08-18T05:40:28.340 に答える
2

ヘッダーを使用してドキュメント ルートより上にリダイレクトすることはできません。ヘッダー リダイレクトは、現在のファイルではなくこのファイルを要求するようにブラウザに指示します。ブラウザは、サーバーが利用可能にしている URL にのみアクセスできます。つまり、ファイルはドキュメント ルートの下にあります。

パブリック URL をドキュメント ルート上のスクリプトに書き換える (または「マップする」) には、書き換えルール (Apache では、他のサーバーが同様のルールを提供します) を調べる必要がある場合があります。

于 2009-08-18T05:42:19.057 に答える
1

インクルードを使用する必要があります。ドキュメントルートにないものにユーザーをリダイレクトすることはできません。

于 2009-08-18T05:40:28.607 に答える
1

これを達成するためにヘッダーを使用することはできません。

ヘッダーは、ブラウザーを特定の URL に送信するために使用されます。これは、URL がサーバーのサービス可能なディレクトリ内にない場合には実行できません。

于 2009-08-18T05:40:54.923 に答える