WEBサーバーのCGIと言えば "カウンター" 、"掲示板" に続いて人気があるのは "WEBチャット" だと思います。
WEBチャットとは複数人でホームページ上でリアルタイムにチャットができるものです。
このWEBチャットをラズパイで構築したWEBサーバーに設置していこうかと思います。
なお、ラズパイでWEBサーバーを構築方法は以下記事になります。
pokug.net
ゆいちゃっとPro 1.0
今回のWEBチャットサービスには "ゆいちゃっとPro 1.0" を設置します。
ホームページにはカスタマイズ方法も記載されているので、WEBサーバーを構築するくらいの技術があれば改変などできるかと思います。
設置方法
CGIファイルのダウンロード
以下のファイルをダウンロードします。
- pref.cgi
- chat.cgi
- enter.cgi
- index.html
- jcodeLE.pl
- 設置マニュアル
- tool.cgi
- kill.cgiアクセス制限
ダウンロード方法は普通に右クリックで "名前を付けてリンク先を保存" をおこまいます。
ファイルの名前を変更する
ダウンロードしたファイルは "pref.cgi.txt" など最後に ".txt"が付いている状態なので、この ".txt" を削除するためにファイルの名前を変更します。
変更前の名前 | 変更後の名前 | 備考 |
---|---|---|
pref.cgi.txt | pref.cgi | |
chat.cgi.txt | chat.cgi | |
enter.cgi.txt | enter.cgi | |
index.txt | index.txt | ファイル名の変更の必要は無し |
jcodeLE.pl.txt | jcodeLE.pl | |
manual.txt | manual.txt | ファイル名の変更の必要は無し |
tool.cgi.txt | tool.cgi | |
kill.cgi.txt | kill.cgi |
CGIファイルの先頭行修正
XXX.cgiファイルの先頭行を以下のように修正します。
#!/usr/local/bin/perl → #!/usr/bin/perl
以下のようにテキストエディタを使用し修正します。
ファイルをラズパイにアップロードする
ラズパイの "/tmp"にファイルをアップロードします。
"/tmp"に"yui"というフォルダを作成し、"/tmp/yui" にダウンロードしたファイルをアップロードします。
ファイルのアップロードの "転送設定" は "テキストモード"にしておきます。
なお、ファイルのアップロードには "WinSCP" というアプリを使用しています。
CGIの設置場所にファイルを移動する
"/usr/lib/cgi-bin/"がCGIの設置場所なので、"/tmp/yui"から設置場所へファイルを移動します。
以下コマンドを実行します。
cd /tmp/yui
sudo cp * /usr/lib/cgi-bin/
CGIのデータファイルを作成
"/usr/lib/cgi-bin/" ディレクトリへ移動し、以下の4つの空ファイルを作成します。
- chat.dat
- sanka.dat
- rank.dat
- kill.dat
具体的には以下のコマンドを使います。
cd /usr/lib/cgi-bin
sudo touch chat.dat
sudo touch sanka.dat
sudo touch rank.dat
sudo touch kill.dat
パーミッションの設定
dateファイル
.datファイルにはパーミッションの "666" を設定します。
以下のコマンドを使います。
sudo chmod 666 chat.dat
sudo chmod 666 sanka.dat
sudo chmod 666 rank.dat
sudo chmod 666 kill.dat
gciファイル
gciファイルは "644" を設定します。
sudo chmod 755 *cgi
その他ファイル
以下の3ファイルは "644" を設定します。
- pref.cgi
- jcodeLE.pl
- index.html
sudo chmod 644 pref.cgi
sudo chmod 644 jcodeLE.pl
sudo chmod 644 index.html
テストとしてひとまずブラウザで確認
以下コマンドを打ち込み、チャット画面がでるか確認します。
http://IPアドレス/cgi-bin/
チャット画面が出ました。
これでチャットが動いていることが確認できました。
チャットの名前などの変更
動いていることが確認できたので、後はWEBチャットのタイトル名などの変更です。
デフォルトでよいのなら以下の設定は不要になります。
pref.cgiファイルの編集
pref.cgiファイルのinit関数で設定されている以下変数を書き換えます。
$endpage | 退室後に表示されるページ |
$title | チャットの名前 |
$body | 背景色など |
$max | 保存するログの最大行数 |
pi@SHIMUSHU:/usr/lib/cgi-bin $vi -c ":e ++enc=cp932" pref.cgi $endpage= 'http://www.big.or.jp/~vampire/test/chat.cgi?window=50&reload=150&mode=checked'; $title = 'ゆいちゃっとPro1.0'; $body='<BODY BGCOLOR="#A1FE9F" TEXT="#000000" LINK="#ff0000" VLINK="#ff0000" ALINK="#FF0000">'; $max = 50;#ログの最大行数
index.htmlファイルの編集
index.htmlファイルの<TITLE>タグの内容を編集します。
pi@SHIMUSHU:/usr/lib/cgi-bin $ vi -c ":e ++enc=cp932" index.html <html><head> <title>タイトルの変更もわすれずに...</title> </head>
終わり
以上、"ホームページにWEBチャットサービスを設置する" でした。
CGIと言えば "カウンター" 、"掲示板" に続いて人気があるのは "WEBチャット" だったと思います。
WEB2.0とか言われてmixiやブログが出てきて廃れた感じですね。
個人でWEBサーバーを立てている人なら是非入れても良いCGIではないでしょうか?