1

次の問題についてアドバイスをお願いできますでしょうか。

Web URL による Web フォルダへのアクセスを制限したいと考えています (これは .htaccess を使用して実行できることを理解しています)。ただし、私の懸念は、このフォルダー内のコード ファイルにも AJAX 呼び出しにアクセスできるようにしたいということです。

参考質問: htaccessによるフォルダやファイルへの直接アクセスを拒否する

したがって、.htaccess のアクセス許可/拒否ルールは、AJAX 呼び出しにも自動的に適用されると仮定するのは正しいでしょうか (それらは URL に基づいているため)。もしそうなら、それが通信しようとしているのが何らかの「コード」であることをサーバーアクセスメカニズムに知らせる最良の方法は何でしょうか?

説明や追加の詳細を提供できるかどうかお知らせください。どうもありがとう!

4

2 に答える 2

2

に基づいてこれを行うことができますHTTP_REFERER。このコードをDOCUMENT_ROOT/.htaccessファイルに入れます::

RewriteEngine On

## disable direct access
RewriteCond %{HTTP_REFERER} !^$ 
RewriteCond %{HTTP_REFERER} !^http://(www\.)?domain\.com/ [NC] 
RewriteRule ^somefolder - [F,NC]

HTTP_REFERERただし、ベース チェックはそれほど強力ではなく、簡単にスプーフィングされる可能性があることを付け加えておきます。

于 2013-10-28T18:31:36.410 に答える
1

セッションに基づく認証メカニズムを実装する必要があります。

  1. アプリケーションで、ユーザーがログインします。
  2. ajax ファイルでは、ユーザーが認証されているかどうかをテストし、認証されていない場合は403 Forbiddenヘッダーを返します。

ajax を使用してカスタム ヘッダーを送信し、ajax ファイルまたは.htaccess存在する場合は でテストすることもできます。しかし、誰かがリクエストを偽造する可能性があるため、これは認証ほど安全ではありません。

于 2013-10-28T18:32:38.667 に答える