• Japanese

MENU

共通認証システム 矢上キャンパス 慶應義塾公式ウェブサイト 慶應義塾の電力使用状況

.htaccess ファイルの利用

理工学ITCのWWWサーバでは、 ユーザが個々に".htaccess" ファイルを設置して、 特定のコンテンツに対してアクセス制限を行ったり、 サーバの振舞いを指定したりすることが可能となっています。

以下では理工学ITCのWWWサーバに .htaccess ファイル を設置する際の注意事項や簡単な利用例をご紹介します。 .htaccess の詳細に関してはWebや書籍等でお調べ下さい。

.htaccess ファイルの設置

パーミッション

.htaccess ファイルのパーミッションは、 HTMLファイル等と同様に、 所有者・所有グループ以外のユーザが読み取り可能な設定にして下さい。

影響範囲

.htaccess ファイルの内容は、 .htaccess ファイルが置かれているディレクトリ、 およびそのサブディレクトリ全体に反映されます。

.htaccess ファイルの利用例

理工学ITCのWWWサーバでの .htaccess ファイルの利用例をいくつかご紹介します。

Webページを塾外から参照できないようにする

Webページを塾外から参照できないようにするには、 以下の内容の .htaccess ファイルをアクセス制限を設けたいディレクトリに設置します。

order deny,allow
deny from all
allow from 131.113.
allow from 131.27.

この .htaccess ファイルでは、まず全てのホストからのアクセスを拒否し、 その上で IPアドレスが "131.113." で始まるホスト、 および"131.27."で始まるホストからのアクセスを許可しています (塾内のネットワークに接続されたコンピュータには "131.113." で始まるIPアドレスか "131.27." で始まるIPアドレスが割り当てられています)。

以下のように、 ドメイン名を用いて塾内のコンピュータを指定してアクセスを制限することも可能です。

order deny,allow
deny from all
allow from .keio.ac.jp

Webページにパスワード認証によるアクセス制限をかける

パスワード認証によるアクセス制限の設定手順を、 アカウント y20000 のユーザが "http://www.educ.cc.keio.ac.jp/~y20000/secret/" 以下のファイルに対してユーザIDとパスワードを設定してアクセス制限をかける場合を例に示します。

  1. Linuxワークステーションに直接ログインするか、 ログインサーバにリモートログインして、Linux環境に接続します。

  2. パスワード認証によるアクセス制限を加えたいディレクトリに移動します。

    % cd ~/public_html/secret/
    
  3. "htpasswd" コマンドでパスワードファイル (".htpasswd") を生成します。 以下の例では "user1" というユーザIDを登録しています。

    % htpasswd -c .htpasswd user1
    
  4. user1のパスワードを 2回聞かれます。 同じパスワードを入力して下さい。

    New password:
    Re-type new password:
    

    正しくパスワードが入力できると以下のメッセージが表示され、 現在のディレクトリ(~/public_html/secret/)に、 ".htpasswd" というファイルが作られます。

    Adding password for user user1
    

    ※ 2回入力したパスワードが一致しない場合でも、 空の .htpasswd ファイルが生成されます。

  5. 既存の .htpasswd に別途ユーザID を追加するには、 同じディレクトリで以下のように htpasswd コマンドを入力します。 以下の例では "user2" というユーザIDを追加しています。

    % htpasswd .htpasswd user2
    
  6. アクセス制限を有効にするよう、.htaccess ファイルを設置します。

     AuthType     Basic
     AuthName     "Secret Member"
     AuthUserFile /home/y/y20000/public_html/secret/.htpasswd
    
     <limit GET>
     require valid-user
     </limit>
    

    "AuthName"の部分には、任意の内容を記述することができます。 その認証が何に対応するものなのかを適宜記述して下さい。 記述した内容は、認証時にWebブラウザのダイアログに表示されます。

    "AuthUserFile"の部分は、".htpasswd" ファイルのパスを指定します。 "echo $HOME"で出力される絶対パスを記述するようにして下さい。

注意事項

  • ここで紹介したパスワード認証(Basic認証)は、 手軽な半面、 パスワードが暗号化されずにネットワーク上を流れてしまうため、 ネットワーク上でパスワードが漏洩する危険性があります。 絶対に Windows や Linux のアカウントと同じパスワードを設定しないでください。

  • パスワードファイルの名前を ".htpasswd" 以外のものにすることも可能ですが、 ".ht" で始まる名前をつけるようにして下さい。 ".ht" で始まる名前をつけることで、 Webブラウザからアクセスできない比較的安全なファイルとなります。

ディレクトリ内のファイルの一覧表示を許可する

理工学ITCのWWWサーバでは、 "index.html" や "index.htm" ファイルが存在しないディレクトリへアクセスした場合、 ディレクトリの中にあるファイルが一覧表示されない設定となっています。 これを変更し、 ディレクトリ内のファイルの一覧を表示できるようにするには、 そのディレクトリに以下の内容を記述した .htaccess ファイル を設置します。

 Options +Indexes

最終更新日: 2011年6月16日

内容はここまでです。