Carpe Diem

  Top > スポンサー広告> Webサーバ > 特定のファイルへのアクセス禁止(リファラ)  

スポンサーサイト

-- - --/-- [--] - --:--

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

特定のファイルへのアクセス禁止(リファラ)

2011 - 10/02 [Sun] - 14:29

以前はリファラではない方法でアクセス制限を書きましたが、今回はリファラを使用します。
前に書いたように、.htaccessは極力使用しないというのがApacheの方針のようなので、それに基づいて今回もディレクティブ設定を使用します。

ではいつものように

$ cd /etc/apache2/sites-available/
$ emacs -nw default-ssl

以前は

        Alias /dav "/var/www/webdav"
        <Directory "/var/www/webdav">
                SSLRequireSSL
                Order deny,allow
                Allow from all
                #AddType application/x-httpd-php .zip
                <Files ~ "\.zip$">
                       deny from all
                </Files>

        </Directory>

だったと思いますが、今回はそれに次の設定を加えます

        SetEnvIf Referer example\.com authoritative_site
        SetEnvIf Referer example\.jp authoritative_site
        <Files *.jpeg>
                       order deny,allow
               Deny from all
               Allow from env=authoritative_site
        </Files>


ポイントはexample\.comexample\.jpの部分で、ここには自分のサイトを書くわけですが「.」ドットの前にエスケープ文字「\」をいれてください。上の記述のように、リファラー元を複数指定もできます。
複数ファイルに対してこれを使用したい場合は次のように書きます。

<FilesMatch "\.(gif|jpe?g|png)$">
    order deny,allow
    Deny from all
    Allow from env=authoritative_site
</FilesMatch>


以上です。
ただ以前も述べたように、リファラは偽装可能であり、それに対する有効な対処法は無いので気休め程度かもしれません。まぁそれでも効果は多少あると思います。

ソース:
Refererを使った画像ファイルへの直リンク禁止

コメントの投稿





管理者にだけ表示を許可する

 | ホーム | 

プロフィール

Cicatrice

Author:Cicatrice
備忘録

検索フォーム

カテゴリ

最新記事

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。