atserver-logo
@SERVER
ヘルプトップ > ガイド > ホームページ > 保護ディレクトリ(アクセス制限)
@SERVER ヘルプ
保護ディレクトリ(アクセス制限) 一覧を見る
保護ディレクトリ(アクセス制限)機能を使って、特定のアクセスのみを許可するディレクトリを作ることができます。
  1. 保護ディレクトリの作成
  2. ユーザの作成と削除
  3. 保護ディレクトリ設定の変更と削除
  4. 旧@SERVERからそのまま移行したアクセス制限のページ
  5. IPアドレスでのアクセス制限
STEP1 保護ディレクトリの作成
ユーザで制限する対象のディレクトリを確認します。
※コントロールパネルの持つ制限はディレクトリ単位となります。ファイル単位でのアクセス制限をする機能は搭載しておりません

「/member」ディレクトリをアクセス制限対象とします
コントロールパネルにログインし、「ウェブサイトとドメイン」から「高度なオペレーション」内の「パスワード保護されたディレクトリ」を開きます。
「保護ディレクトリの追加」をクリックします。
ディレクトリの場所を指定します。該当ディレクトリが存在しない場合は、/httpdocs配下で新たに作成されます。「ディレクトリの位置」は通常「ドキュメントルート」を選択します。
設定ができると「保護ディレクトリ(ディレクトリ名)を作成しました」と表示されます。
タイトルに日本語を入力することも可能ですが、ブラウザにより文字化けするケースが多いため、半角英数字での設定を推奨します。

タイトルに「メンバー専用」を設定した場合の文字化けの例
STEP2 ユーザの作成と削除
作成した保護ディレクトリを選択します。
「新しいユーザの追加」をクリックして、アクセスのための情報を設定します。
ユーザ名とパスワードの組み合わせを設定します。
  • パスワードは半角英数記号で設定します。引用符、スペースは使用できません。
  • パスワードにユーザ名と同じ文字列は設定できません。
  • パスワードの長さは5文字以上14文字以下で設定します。
  • ユーザごとに違うコンテンツを表示する機能はございません。
正しく設定できると下記のような表示がされます。必要なユーザ数だけこの作業を繰り返して登録します。
【ご注意】旧@SERVERと違い、ディレクトリ内に「.htaccess」「.htpasswd」ファイルは生成されません。
アクセス権を取り消すには、該当のユーザを削除します。
「スナップショットを削除」にチェックを入れて「OK」をクリックします。
STEP3 保護ディレクトリ設定の変更と削除
作成した保護ディレクトリを選択します。
保護ディレクトリの一覧表示で、対象ディレクトリ名をクリックして「ディレクトリ設定」 をクリックします。
「ディレクトリ名」もしくは「保護エリアのタイトル」を編集し「OK」をクリックします。
「ディレクトリ名」を変更した場合、保護対象のディレクトリが新しいものになり、元のディレクトリは保護のない状態になります。
保護ディレクトリの設定を削除するには 保護ディレクトリの一覧表示で、設定を削除したい項目のチェックボックスにチェックを入れ、「保護を削除する」ボタンをクリックします。
「この処理によって、ディレクトリの保護が解除されます。 インターネットユーザがそのディレクトリに自由にアクセスできるようになります。」という注意書きが表示されます。
表示されているディレクトリ名を確認して、「スナップショットを削除」のチェックボックスをチェックを入れ、「OK」ボタンをクリックします。
アクセス制限の設定のみを削除するので、ハードディスク上のディレクトリそのものは残ります。ディレクトリ自体を削除したい場合は、ファイルマネージャーやFTPソフト等を通じて別途削除作業を行うようにしてください。
STEP4 旧@SERVERからそのまま移行したアクセス制限のページ
新旧@SERVERではファイルのフルパスの情報が異なるため、.htaccessによるアクセス制限について、パスワードファイルを見つけられないため、認証されない可能性がございます。
以前からの認証設定をそのまま使いたい場合は「.htaccess」ファイルを編集します。FTPソフト経由でも、ファイルマネージャ上から直接編集することも可能です。
ファイルマネージャーから編集する場合、該当するディレクトリ内の「.htaccess」ファイルの行の「ツール」内で編集ボタン(鉛筆のアイコン)をクリックします。
パスワードファイルの場所を指定した行を以下のように書き換えます。(デフォルトの場合です。別な場所や別なファイル名をお使いの場合は、お客様の環境に合わせて読み替えください。)

旧@SERVEの記述
AuthUserFile /home/sites/www.(お客様ドメイン)/web/(該当ディレクトリまでの階層)/.htpasswd

新@SERVEの記述
AuthUserFile /var/www/vhosts/(お客様ドメイン)/httpdocs/(該当ディレクトリまでの階層)/.htpasswd
修正が終わったら、編集画面下側の「OK」ボタンをクリックします。
【ご注意】上記方法で、従来の「.htaccess」「.htpasswd」は流用できますが、ユーザの追加やパスワードの変更を行う画面がございませんので、お客様にて直接編集するか、コントロールパネルのもつ「保護ディレクトリ」機能に切り換えていただくことをご検討ください。
この場合、先に該当のディレクトリを「保護ディレクトリ」として設定してから、「.htaccess」ファイルの削除の順に行ってください。先に「.htaccess」を削除すると該当のディレクトリへのアクセス制限が外れてしまいます。
STEP5 IPアドレスでのアクセス制限
  • コントロールパネルからの設定機能はございません。
  • 旧@SERVERの「.htaccess」ファイルにてIPアドレス制限の記述がある場合、アクセスができません。
  • 以下のような「.htaccess」ファイルをお客様にて作成していただく必要がございます。
【例1】一部のIPアドレスの閲覧だけ許可する方法 (PHPファイルも含むすべてのファイルが対象)
SetEnvIf X-Forwarded-For ^(許可したいIPアドレスその1)$ OKAC
SetEnvIf X-Forwarded-For ^(許可したいIPアドレスその2)$ OKAC
SetEnvIf X-Forwarded-For ^(許可したいIPアドレスその3)$ OKAC

<Files ~ (.*)>
    Order deny,allow
    Deny from all
    Allow from env=OKAC
</Files>


【例2】特定のIPアドレスからのPOSTメソッドのみ許可する方法
<Limit POST>
    Order deny,allow
    Deny from all
    Allow from 許可したいIPアドレスその1
    Allow from 許可したいIPアドレスその2
</Limit>


【例3】一部のIPアドレスの閲覧だけ拒否する方法(PHPファイルも含むすべてのファイルが対象)
SetEnvIf X-Forwarded-For ^(拒否したいIPアドレスその1)$ NGAC
SetEnvIf X-Forwarded-For ^(拒否したいIPアドレスその2)$ NGAC
SetEnvIf X-Forwarded-For ^(拒否したいIPアドレスその3)$ NGAC

<Files ~ (.*)>
    Order allow,deny
    Allow from all
    Deny from env=NGAC
</Files>


【例4】特定のIPアドレスからのPOSTメソッドの発行を禁止する方法
<Limit POST>
    Order allow,deny
    Allow from all
    Deny from 拒否したいIPアドレスその1
    Deny from 拒否したいIPアドレスその2
</Limit>