2017-07-26 21 views
1

にPHPの外のフォルダに私はブロックへのアクセスは、htaccessの

assets 
    css 
    js 
    img 
    ........ 
caches 
    x-cache 
    y-cache 
    ........ 
resources 
    config.php 
    libraries 
    pages 
    ........ 
index.php 
.htaccess 

は基本的に、私はページを表示するには、資産とリソース/ページを使用し、私のプロジェクトで、以下の構造を有しています。私はconfig.phpのような他のファイルをユーザからアクセス可能にしたくありません。だから、私はこれらのファイル/フォルダをPHPコードでのみ利用できるようにする方法を尋ねています。ユーザーをインデックスページにリダイレクトするにはどうすればよいですか?すべてのユーザーがwww.sitename.com/assetsを訪問しようとした場合

答えて

0

各フォルダにPHPファイルを作成し、index.phpファイル

<?php 
header('Location:../'); 
?> 

内のコードを以下の プットD index.phpがそれを呼び出しますそれらはスーパーフォルダのindex.phpファイルにリダイレクトされます。/resourcesフォルダーと同じです。フォルダ内のフォルダの は、config.phpをすることができますドキュメントルートに.htaccessファイルの先頭にファイルのそれぞれに

<?php session_start(); 
if(!isset(mySessionValue)){ 
header('Location:sitenam.com/index.php'); 
}?> 
0

をPHPのセッションを使用するようなファイルのために、今すぐ

<?php 
    header('Location:../../'); 
    ?> 

を使用しますmod_rewriteを使用して、特定のディレクトリ/ファイルへの直接アクセスをブロック(またはリダイレクト)します。たとえば:

RewriteEngine On 
RewriteCond %{REQUEST_URI} ^/resources 
RewriteRule^- [F] 

上記(つまり、ユーザーからの直接の要求を。)任意のURLの禁止403を送信し/resources開始しています。あなたは、インデックスページにユーザーをリダイレクトしたい場合

403を送信すると、読むために上記RewriteRuleを変更、しかし、好ましい応答のようになります。

RewriteRule ^/[R,L] 
関連する問題