FAQ よくある質問とその回答です。

[ディレクトリにパスワードロックをかけるには?][エラー時に任意のページを表示させるには?]
[index.htmlがないディレクトリの内容を表示しないようにするには?][sendmailのパスは?][SSIは使えないの?]
[Road Mailコースのパスワード変更方法は?][Perlのパスとバージョンは?][CGIが動かない]


ディレクトリにパスワードロックをかけるには?

特定のディレクトリにIDとパスワードを入力しなければアクセスできないようにする方法ですが、まずsshでログインし、パスワードファイルを作成します。
パスワードファイルはhtmlディレクトリではなくホームディレクトリに置くのが良いでしょう。
$はプロンプトです)

$ htpasswd -c lock.pwd user        // コマンドを入力
Adding password far user
New Passwd:
               // パスワードを入力
Re-type new password:          // もう一度パスワードを入力
$

これでパスワードファイルは作成されました。lock.pwd がパスワードファイル名です。
どんな名前でも構いません。
userはIDです。任意のものを入力します。
-c はパスワードファイルを作成するという意味です。
IDを追加する場合は、

$ htpasswd lock.pwd user2

という風にしてください。

次にロックをかけたいディレクトリに下記の内容の.htaccessファイルを置きます。

AuthType Basic
AuthName "Private Directory"
AuthUserFile /home/user/lock.pwd
AuthGroupFile /dev/null
<Limit GET POST>
require valid-user
</Limit>

AuthNameはIDとパスワード入力のウィンドウに表示される文字列です。
自由に設定してください。
AuthUserFileはパスワードファイルの指定です。
ルートからのフルパスで指定してください。

これでパスワードロックがかかるようになります。

back

エラー時に任意のページを表示させるには?

表示させたいディレクトリに .htaccess というファイルを置きます。
ファイル名の先頭が"."になっていますのでご注意ください。
このファイルの中に下記の行を指定します。

ErrorDocument 404 http://www.road.ne.jp/404.html

404はエラー番号です。設定したい番号を指定してください。
エラー番号の後ろに表示するページのアドレスを表記します。
複数の番号を設定される場合は、次の行に指定してください

例:
ErrorDocument 404 http://www.road.ne.jp/404.html
ErrorDocument 500 http://www.road.ne.jp/500.html

.htaccess を置いたディレクトリ以下の全てのサブディレクトリに反映されます。
例えば /home/ユーザ名/html/ に .htaccess を置けば全てのディレクトリに反映されることになります。
また、 /home/ユーザ名/ ではなく /home/ユーザ名/html/ 以下に置いてください。

back

index.htmlがないディレクトリの内容を表示しないようにするには?

表示させたいディレクトリに .htaccess というファイルを置きます。
ファイル名の先頭が"."になっていますのでご注意ください。
このファイルの中に下記の行を指定します。

Options -Indexes

Optionsで指定する指示が複数の場合は同じ行で続けてください。

例:
Options -Indexes -Includes

.htaccess を置いたディレクトリ以下の全てのサブディレクトリに反映されます。
例えば /home/ユーザ名/html/ に .htaccess を置けば全てのディレクトリに反映されることになります。
また、 /home/ユーザ名/ ではなく /home/ユーザ名/html/ 以下に置いてください。

back

sendmailのパスは?

sendmailのパスは

/usr/lib/sendmail

です。

back

SSIは使えないの?

htmlファイルの拡張子を shtml としてください。

back

パスワードの変更方法は?

sshで ssh.road.jp にアカウント名とパスワードでログインします。
passwdコマンドに実行しますし、まず現在のパスワードを入力します。
次に新しいパスワードを入力します。
もう一度新しいパスワードを入力するとパスワードの変更が完了します。

Changing local password for xxx
Old password:
            // 現在のパスワードを入力
New password:           // 新しいパスワードを入力
Retype new password:       // もう一度新しいパスワードを入力
passwd: updating the database...
passwd: done           // このメッセージが出力されれば変更完了です。

back

Perlのパスとバージョンは?

Perlのパスは、

/usr/bin/perl

または

/usr/local/bin/perl

をご利用ください。どちらを指定しても同じです。

back

CGIが動かない

CGIのディレクトリがcgi-binになっていないでしょうか?
cgi-binは共有ディレクトリとなっており、ユーザディレクトリに置いてもWebからは参照されません。
他のディレクトリ名をご使用ください。

Perl等のパス設定は正しいでしょうか?
また、CGIで使うプログラムが不足している場合があります。
標準的なものはインストール済みですが、足りないものがある場合は事務局までお知らせください

どうしても動かない、という場合は事務局までお問合せください。
事務局の方で調べますのでCGIのファイル名等をお知らせください。

back


Copyright© Conte Ltd. 1999, 2024 All rights reserved.