Tips

.htaccess でのアクセス設定に注意

投稿日:

レンタルサーバーでは、特定のディレクトリに .htaccess ファイルを置き、アクセス制限をかける場合があります。

例えば、以下を記述した .htaccess ファイルを置くと、そのディレクトリ以下にはウェブからアクセスできないようになります。

order deny,allow
deny from all

ところが、この設定を行ったにも関わらず、このディレクトリ内の特定のファイル(画像ファイルなど)にはアクセスできてしまうことがあります。

このような状態になる1つの原因は、ウェブサーバーの設定ファイルで、例えば以下の設定が記述されていることです(もしくは、上位のディレクトリに配置された .htaccessファイルにこれが書かれていることも考えられます)。

<FilesMatch "\.(jpg|gif|png)$">
  order deny,allow
  allow from all
</FilesMatch>

.htaccessファイルによる設定内容は、ディレクトリの下層にまで引き継がれるため、この FilesMatch も引き継がれ、拡張子が .jpg.gif.png であるファイルにはアクセスができてしまうのです。

これを禁止するには、個別のディレクトリに配置する .htaccess ファイル内に、これらの拡張子を持つファイルに対するアクセス制限設定を書く(上書きする)必要があります。

<FilesMatch "\.(jpg|gif|png)$">
  order deny,allow
  deny from all
</FilesMatch>

レンタルサーバーの場合、ウェブサーバーの設定ファイルにどんな記述がされているかは分かりませんので、これは困った問題です。

しかし今示したように、対策はありますので、まずは「こういう問題が起きうる」ということを知ることが大切だと思います。

参考

-Tips

執筆者:fitallright

関連記事

【エックスサーバー】サイトを編集する時は、mod_pagespeed をオフにしましょう

2019年3月27日:「mod_pagespeed設定」機能の新規設定の受付が終了しました。 「mod_pagespeed設定」機能の新規設定の受付終了について – 2019/03/27 …

【VPS, クラウドサーバー】MySQL (MariaDB) が突然停止する場合は、innodb_buffer_pool_size が大きすぎるかもしれません

VPS や クラウドサーバー(OS は Linux)を借りて、MySQL (MariaDB) を使っている場合のお話しです。 目次現象調査my.cnf で innodb_buffer_pool_siz …

【WordPress】投稿編集画面で画像(メディア)を追加する際に挿入されるURLを相対URLにする

WordPress の投稿編集画面で、「メディアを追加」ボタンを使って画像(メディア)を追加する際、挿入されるHTMLコードのURL部分は 絶対URL になります。 しかし、これだと不便なので「相対U …

FTP でファイルダウンロードがエラーになる

FTP でサーバー上のファイルをダウンロードした時に、エラーが発生して失敗することがあります。 いろいろな原因が考えられますが、その1つはファイル名の長さです。 Windows の場合、ファイル名が …

WordPress のウィジェット内項目の先頭にアイコンを表示する方法(Font Awesome 5 を利用)

WordPress ではサイドバーなどに ウィジェットを作成することができます。 ウィジェット内の各項目の先頭にアイコンを表示する方法はいろいろあると思いますが、本ページでは Font Awesome …

ロリポップ!「スタンダードプラン」
さくらのレンタルサーバ「スタンダードプラン」