0

特定のリクエストがサーバーレベルで拒否され、アプリケーション (私の場合は Drupal) にまったく到達しないように、アプリケーションディレクトリの htaccess に何かを配置することは可能ですか?見つかった"?

htaccessによって「禁止」されたファイルへのリクエストはサーバーによって拒否され、それ以上処理されないと思いましたが、そうではありません。

例:

私自身のサイト ドメインが example.com であるとします。htaccess には次の行があります (これは、jpg 画像のホットリンクを防ぐための単純化された設定です)。

RewriteCond %{HTTP_HOST} ^example\.com [NC]
  RewriteCond %{HTTP_REFERER} !^$
  RewriteCond %{HTTP_REFERER} !^http://([-a-z0-9]+\.)?example\.com [NC]
  RewriteRule \.(jpg)$ - [F,NC,L]

たとえば、http://altlab.com/hotlinking.htmlにアクセスして、example.com サイトから既存の jpg アドレスを入力すると、画像を表示できないと表示されます。それでブロックされました、はい。しかし、上記のリクエストは Watchdog (Drupal の内部ログ) にも反映されており、これは問題ありません。

外部ドメインからの jpg ファイルのリクエストを Apache サーバーが拒否し、これらのリクエストをアプリケーションに渡さないようにする方法はありますか?

4

1 に答える 1

0

4XX ステータス コードでリダイレクトする必要があります。

RewriteRule ... [...,R=400]
于 2012-05-27T22:14:51.593 に答える