WordPress 直リンク禁止 uploadsメディアにアクセスさせたくない

uploadsdeny.jpg

Members Onlyプラグインを利用すると、ログインユーザのみホームページ閲覧が可能になります。ログインしない状況だと、トップページに戻されます。

WordPressの会員制サイトのユーザ管理とログ取得

しかし、この状態でも、uploads内になるファイル(メディアにアップロードした写真やその他のファイルなど)は直接URLに入れると表示できてしまいます。これは許せません。

そんな時は、

wp-content/uploads
ディレクトリ直下に .htaccess を作成し

例 トップページがwww.hogehoge.comの場合

SetEnvIf Referer “^http:// www\.hogehoge \.com” ShowOK
order deny,allow
deny from all
allow from env=ShowOK

と書きます。

SetEnvif でアクセス元URLがwww.hogehoge.com だった場合環境変数ShowOKをセットし、基本的にアクセス禁止、環境変数にShowOKがセットされていたら、許可とします。

このファイルを置く事で、ホームページからのアクセスなら写真などが表示され、直接uploadsないのメディアにリンクを張られても見れない状況になります。