自宅サーバーHPにアクセスカウンターを設置

TamanのホームページはFC2カウンターサービスを利用しているが、フリープログラムを利用してカウンターを設置したいと以前から考えていた。 自宅サーバーや仮想OSで何度かCGIとPHPのテストをした経験があるが、ほとんど意味も分からずコピペ・・・
カウンター、掲示板、メールフォームなどに興味を持っているが、初心者にはチンプンカンプン????
でも、いいサイトに巡り合ったので今回は旨く出来そうだ!

参考にさせて頂いたサイトは、
laotourの部屋さんの「laotourの離れ」に書いてある「アクセスカウンター」を参考にさせて頂きました。ありがとうございます 



まずはTamanの環境を説明します。

素人なので失敗しても何度でもやり直せるように、VirtualBoxにubuntu 10.04 serverを入れた環境でtestを行いました。

それからメインPCのスペックも記述しときます。

ホストOs ubuntu12.04LTS Desktop 32bit
CPU Pentium Dual-Core E6500 2.93GHz
MB Gigabyte G41+ICH7 Micro-ATX GA-G41M-COMBO/A
Memory 4GB
HDD 500GB




まず、VirtualBox上でubuntu 10.04 serverをインストール後、update済、openssh-server のinstallが済んでいる状態がtamanのスタート地点なので、
ここから始めます。
仮想OSのIPアドレスは「192.168.0.210」に設定してます。


◆サーバーにssh接続してapache2をインストール

$ sudo apt-get install apache2

既に自宅サーバーを構築している方には必要ありませんね・・・
あくまでもTamanの備忘録として書いています


◆ファイルとディレクトリの所有権をユーザー(taman515)に変更する

$ sudo chown -R taman515 /var/www/







ここから大事な設定です!

◆apache2の任意のディレクトリでCGIが使えるように設定する

$ sudo nano /etc/apache2/mods-enabled/mime.conf

# 165行目:#コメント解除し、CGIとして扱う拡張子を設定
AddHandler cgi-script .cgi .plを追加


$ sudo nano /etc/apache2/sites-available/default

# 10行目:変更 ( Indexes は削除 )
Options FollowSymLinks MultiViews ExecCGIを追加
# 11行目:変更
AllowOverride allに変更


◆CGIを実行するPerlのシンボリックリンクを貼る (よく解らない部分・・・)

$ sudo ln -s /usr/bin/perl /usr/local/bin/perl
/usr/local/bin/perlスリプトも使えるのでパスの書き換えは必要ない、という事かな?
Webで調べてくださいね!

最初にやったCGI掲示板設置の時には、パスが違う為に以下の様なエラーが出ましたが、
シンボリックリンクを貼るとうまくカウンターが表示されました。


◆apache再起動

$ sudo service apache2 restart

これでCGIの設定は終わりです。





CGIテストページを作成して動作確認をする

サーバーにssh接続して以下を行う

/var/www/counter ディレクトリを作りその中にtest.cgiを置き、
下記のような設定およびテストを行う

/var/www/counter ディレクトリを作る

$ sudo mkdir /var/www/counter

ファイルやディレクトリの所有者をユーザー(taman515)に変更

$ sudo chown -R taman515 /var/www/counter


test.cgiを /var/www/counterに作る

$ sudo nano /var/www/counter/test.cgi


#!/usr/bin/perl
print "Content-type: text/html\n\n";
print "<html>\n<body>\n";
print "<div style=\"width: 100%; font-size: 50px; font-weight: bold; text-align: center;\">\n";
print "Taman's CGI Test Page";
print "\n</div>\n";
print "</body>\n</html>\n";


コピペ、保存して閉じる

◆test.cgiのパーミッションを755に変更

$ sudo chmod 755 /var/www/counter/test.cgi


Webブラウザでhttp://192.168.0.210/counter/test.cgiを実行すると・・・

OK成功した!
確認が済んだらこのファイルは/counterディレクトリから削除しましょう。
作業終了後でもいいね!






カウンターの設置

今回設置するカウンターは「とほほのwww入門」の杜甫々さんが作った
「WwwCounter Ver3.15 - CGIカウンター」を使わせて頂きました。
ありがとうございました。
WwwCounter Ver3.15利用メモを参考にしました。

◆カウンターソフト「WwwCounter」のダウンロード (ubuntu Desktop PCにDL)

wcnt315.zip クリックでファイルがDL出来ます


解凍後の添付ファイルの内容は

readme.htm 説明ファイル
gifcat.pl GIF画像連結ライブラリ
wwwcount.cgi CGIスクリプトファイル
wwwcount.cnt カウンター値保存ファイル(最初は空)
wwwcount.dat 日付保存ファイル (最初は空)
wwwcount.acc アクセスログ保存ファイル(最初は空)
wwwcount.htm 設置サンプルファイル
lock ロックファイル作成用フォルダ
0.gif~9.gif カウンター用画像


解凍後「wcnt315.zipファイル」は削除し、readme.htmlとwwwcount.htmlは
サーバーには送らないファイルなのでデスクトップに移動した方がいいでしょう。


ファイルの転送、パーミッションの変更

◆ すべてのファイルをFTPでサーバーの/var/www/counterに転送する。
サーバーにアップロードする場合は、GIF画像をバイナリモードで、
その他のファイルをテキストモードで転送する。

転送したらフォルダーのパーミッション変更は以下のように変更する

  wwwcount.cgi  755
  wwwcount.cnt  666
  wwwcount.dat  666
  wwwcount.acc  666
  lock      777





カウンターを置きたいページ(index.htmlなど)に、以下のhtmlタグを貼り付ければ、設置完了です。(以下はkentWebさんの設置例)

<img src="./counter/wwwcount.cgi?gif" width="96" height="18"/>

htmlタグのパス ./counter は環境によって変わります!
ちょっとハマるポイントですね・・・

カウンタープログラムを置いたTaman自機サーバーのディレクトリーは、
/var/www/homepage/cgi/wwwcounter です。


Webブラウザでカウンタータグを置いたindex.htmlページ
  http://192.168.0.210/ にアクセスすると・・・

OK!出来た!
仮想OSでうまく動いたので今度は実際に稼動しているサーバーから動かしてみる。
Tamanのcounte設置ページ クリックするとカウンターが動くのが見れると思います。

tamanはwwwサーバーテストさんを使わせて頂いて動作確認することが出来ました。
ありがとうございます!






最後に
==================================================
以下の方々のサイトを参考にしてカウンターを設置することがが出来ました。
ありがとうございました。
laotourの部屋さんの「laotourの離れ」
「とほほのwww入門」
Apach2インストール/設定




ページのトップへ戻る


inserted by FC2 system