自宅サーバー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インストール/設定