さて、続きです。前回の記事はこちらです。とりあえず掲示板CGIが動かせそうだということがわかりました。
WordPressが稼働するWEBサーバで、掲示板CGIを共存させることができるか(後編)
フリーCGI掲示板の設置方法
ここでは仮に、ディレクトリ「bbs」というディレクトリ(フォルダですね)に掲示板CGIを入れると仮定します。掲示板CGIは、割と有名な「clipbbs」を入れるとします。
「clipbbs」はフリーCGIです。こちらからダウンロードできます。https://www.kent-web.com/bbs/clipbbs.html
つまりドメインがwww.hogehoge.jpだった場合、URL的には、www.hogehoge.jp/bbs/clipbbs.cgi といった具合になります。
工程としてはまず「bbs」にパスワードをかけます。関係ない人が掲示板やアップロードしたファイルへアクセスできないようにするためです。極端な機密情報を扱うわけでもないので今回はベーシック認証を使います。ブラウザで掲示板を開こうとしたときにIDとパスワードを求められます。
これには、「.htaccess」と「.htpasswd」の2つのファイルが活躍します。前者は「ホームページやブログの動きを制御するよ。パスワードファイルとかがどこのディレクトリにあるかも決めるよ。」って役割。後者は「パスワードファイル」そのものです。
理屈はこのへんにして実際の手順は次の通りです。なお、本当は文字コードやらアスキーモード転送やら気にしなければならないのですが、最近のFTPソフトは賢いのでこのような手順でやるのが早道です。
設置の手順
■ディレクトリを作る
色んな方法がありますが、FTPソフトでディレクトリ「bbs」を置きたいところへ作成します。ここではwww.hogehoge.jpの直下に置くこととします。www.hogehoge.jp/bbs/です。
■ディレクトリのアクセス権
FTPソフトでディレクトリ「bbs」のアクセス権(パーミッション)を変更します。数字なら755、rwxとかならrwxr-xr-xにします。ここでよく分からない方は慣れるまでどうせ分かりませんので(最初は私もそうでした)、あまり考えずに設定変更してください。
■掲示板CGIプログラムをアップロード
FTPソフトでディレクトリ「bbs」に、ダウンロードした「clipbbs」のフォルダ内容をざばっと全部入れちゃいます。
入れたら、「bbs」の中にあるclipbbsの構成ファイルそれぞれにアクセス権を設定します。
こちらに書いてあります。
https://www.kent-web.com/bbs/clipbbs.html
■.htaccessファイルを作成
最近のFTPソフトでは、FTPサーバ上へ直接テキストファイルを作成することができます。この機能を使って、ディレクトリ「bbs」に「.htaccess」というテキストファイルを作成して下さい。(邪道ですがこれが一番早いです。)
■.htaccessファイルの編集(説明)
.htaccessファイルを編集するのですが、調べておかなければならない情報があります。
後ほど出てくる.htpasswdファイル(パスワードが記述されたファイル)はここにありますよ、という情報です。
これが厄介です。「フルパス」が分からないと書けないのですが、使っているサーバによって異なるのにどこにも書かれていないからです。
■.htaccessファイルの編集(フルパスの調査)
お名前ドットコムの共有サーバSDを利用している場合、以下のように表示されます。数字や文字はサーバ環境によって異なりますが、なんとなくこういう感じのはずです。
/export/sd▲▲▲/www/jp/r/e/gmoserver/7/5/sd0▲▲▲▲▲/hogehoge.jp/bbs/fullpass.php
つまりは「fullpass.php」以外の部分「/export/sd▲▲▲/www/jp/r/e/gmoserver/7/5/sd0▲▲▲▲▲/hogehoge.jp/bbs」をコピーします。
■.htaccessファイルの編集(記述)
FTPソフト上で.htaccessファイルを開いて以下の要領で編集します。
前項でコピーした部分、一行目のスラッシュの直前へペーストします。
AuthUserFile /.htpasswd
AuthName "Input ID and Password."
AuthType Basic
<limit GET>
require valid-user
</limit>
<IfModule mod_rewrite.c>
RewriteEngine Off
</IfModule>
ということで一行目は
AuthUserFile /export/sd▲▲▲/www/jp/r/e/gmoserver/7/5/sd0▲▲▲▲▲/hogehoge.jp/bbs/.htpasswd
となります。AuthUserFileの後は半角スペースが入りますのでお間違えのないように。
ちなみに各項目が何を示しているかを簡単に説明するとこんな感じです。
- AuthUserFile → パスワードファイルはここですよ〜
- AuthName → アクセスしようとしたときに表示されますよ〜
- AuthType → 認証方法。ここではベーシック認証ですよ〜
- require valid-user → アクセスしようとした全員パスワード聞かれますよ〜
- RewriteEngine Off → Wordpressとかの影響を受けないようにしますよ〜
ほかにもオプションはありますので詳しく知りたい方は別途ググって下さい。
■.htpasswdファイルの作成(説明)
.htpasswdファイルは、パスワードが記述されたファイルです。
.htaccessと同様にFTPソフトでディレクトリ「bbs」へ「.htpasswd」というテキストファイルを入れて下さい。
※繰り返しますが、いずれも手順としては邪道です。でもこうやるのが一番早いです。たぶん。
■.htaccessファイルの編集(準備・編集)
FTPソフト上で.htpasswdファイルを開いて以下の要領で編集します。
.htpasswdファイルには、IDとパスワードを入力しますが、そのまま書いてはいけません。
パスワード部分を暗号化してから記述します。
例えば、IDを1234、パスワードを5678と入力すると
1234:/dsVIAE1txMmc
と出力されますので、これを.htpasswdファイルへコピペします。
次へ続きます。