2012-01-18 6 views
2

私のウェブサイトは多くのページから構成されており、それらのページは2つのカテゴリに分かれています.1つは "html"ファイルと "html"ファイル必要があります。両方のPHPファイルPHP:ブロックブラウザのリクエスト

「コア」ファイルは「html」ファイルからではなく、これをブロックしたいという状況があります。

「コア」ファイルは、「html」ファイルが要求された場合にのみ開くことができます。それ以外の場合は、404エラーが表示されます。

note *:私が以前言ったように、 "html"と "core"ファイルは両方ともPHPファイルです。

ありがとうございます!

+0

これは実際には、サーバーの設定ではなく、実際にPHPの質問です。別のStackExchangeサイトに持って行きたいかもしれません。 –

+0

私は実際にサーバーに何も知らないので、私はPHPでこれを行うことができれば面白いです。 –

答えて

3

コアに検証コードを作成します。

Somehtingのように、定義されている場合は定数 "html"を検証し、そうでない場合はコードを実行し、404エラーをスローします。

http://br2.php.net/manual/pt_BR/function.constant.php

他の方法では、Apacheサーバを使用している場合は、htaccessファイルを使用してブロックすることです。

HTML(PHPファイル)

define('HTML'); 

コア(PHPファイル)

if(!defined('HTML')) { /* Display 404 error */ } 
1

サーバー設定で制御するか、ドキュメントルートから適切に移動するかのどちらかです。

2

.htaccessを使用して問題のファイルへのアクセスを制限することができます。

例えば、

<Files ~ "\.php$"> 
Order allow,deny 
Deny from all 
</Files> 

またはあなたの「コアファイル」のすべてのあなたが制限される可能性がディレクトリにある場合:すべての他の人があなたのような何かを.htaccessファイルに追加でき.htmlを持っていながら、「コアファイルは、」拡張子.phpを持っている場合アクセスを入力して

<Directory ~ "\core"> 
Order allow,deny 
Deny from all 
</Directory> 

あなたが指定した.htaccessを使用するためには、AllowOveride Allが必要です。

+0

私はポストで言ったように、それらは両方ともhtmlコードを含んでいるので、 "html"ファイルと呼ばれる両方のPHPファイルです。私は自分のオプションを検討し、もし私がPHPで何も持っていなければ、htaccessに行くでしょう、クイックリプレイに感謝します。 –

+0

@MorSela申し訳ありませんが、私はそれを逃しました! :)コアファイルの名前を.inc.phpに変更し、上で指定した制限を適用するか、別のディレクトリに移動して制限することができます。 GabrielGartzによって定義された概念の概念も実行可能な解決策です – mobius