逆アクセスランキングを表示するSim Accessをバージョンアップしてみた

逆アクセスランキングを表示するSim Accessをバージョンアップしてみた

Sim Access はリンク元 URL を取得してアクセスランキングを生成するスクリプト。

あらかじめ指定した間隔でランキングを自動生成し、URL の置換や拒否、「一月」 「指定日数」 「最近の○日間」の 3パターンでランキングの生成ができます。

当ブログとメインサイトで以前から使用していた Sim Access ですが、メインサイトの表示がおかしくなったので、ちょっと調査してみました。


Sponsored Link

症状としてはアクセスランキングが生成されない。 というか何故か首相官邸ホームページが1個だけ表示される。 ウィルスか? 踏み台か? と疑ったがどうも違うよな….

ログを確認すると 2012年10月27日でランキングの生成が止まっている。 ここ愚者の紋章とメインサイト両方とも正常なランキングは 2012年10月27日で停止。 但しメインサイトは2013年01月06日のログがあり、そこには 首相官邸ホームページ が。

10月27日前にプラグインを入れたり、カスタマイズを何かやったかなと考えたが、3か月前のことなので原因がサッパリわからない。

何かヒントはないかと Sim Access 製作者様のサイトに行ってみると、 version 1.1.1 がリリースされていたので、とりあえずバージョンアップしてみることにした。

Sim Access 作者様のサイトはこちら → Sim Access

WordPress での Sim Access 設置・設定

ますダウンロードして解凍した simaccess フォルダを plugins フォルダ下に設置。

次にパーミッションを変更する。 作者様が案内されているのは log が( 707 or 777 )、access.sqlite と rank.html が( 606 or 666)。

当サーバーはヘテムルなのでパーミッションは simaccess フォルダを 「705」 、log フォルダを 「705」、access.sqlite を 「604」 、rank.html を 「604」 とした。

これは以前と同じだが、 header.php の 「</head>」 の前に以下を貼り付ける。

<script type="text/javascript" language="javascript">
<!--
document.write("<img src=\"http://xxxxxxx/wp-content/plugins/simaccess/access.php?ref=" +
document.referrer + "\" style=\"width:0;height:0;border:0;\" />");
//  -->
</script>

更にアクセスランキングを表示する箇所に以下を追加。

<?php include("http://xxxxxxx/wp-content/plugins/simaccess/rank.html"); ?>

設置した URL 「http://xxxxxxx/simaccess/」 にアクセスして、ユーザー名 :「admin」、パスワード :「pass」 と入れるとログインできる。

「xxxxxxx」 のところは当然自分のドメインね。

ログイン後は、 「設定」 画面から自分用の新しいユーザー名と新しいパスワードに変更しておく。
逆アクセスランキングを表示するSim Accessをバージョンアップしてみた1

Sim Access の表示カスタマイズ

以前のバージョンは rank.php ファイルの22行目あたりを変更すればよかったが、今回の version 1.1.1 は simaccess → class フォルダ内の class.access.php 126行目から165行目を変更する。 下記はここ愚者の紋章の設定。 29行目をイジってる。

// 以下の HTML 部分を編集
		// 始まりに表示する部分です
		$html = '<ol class="ranking">';
		// ここまで
		$rank = 0;
		$rank_temp = 1;
		$prev_rank = 0;
		$prev_count = -1;
		for ($i = 0; $i < $loop; $i++) {
			if ($count[$i] == $prev_count) {
				$rank = $prev_rank;
				$rank_temp++;
			} else {
				$rank = $prev_rank + $rank_temp;
				$rank_temp = 1;
			}
			// 以下の HTML 部分を編集
			// ループ部分です。ランキングの数だけ繰り返されます。
			/*
			$rank		: 順位
			$url[$i]	: アクセス元の URL
			$name[$i]	: 表示する文字列
			$count[$i]	: アクセス数
			*/
			$html .= '
			<li class="sliding-element"><a href="'.$url[$i].'" title="'.$name[$i].'">'.$name[$i].'</a></li>';
			// ここまで
			$prev_rank = $rank;
			$prev_count = $count[$i];
		}
		// 以下の HTML 部分を編集
		// 終に表示する部分です。
		$html .= '</ol>';
		// ここまで

これに jQuery の 「sliding_effect.js」 を組み合わせ CSS を調整すると、右サイドバーのアクセスランキングとなる。

Sim Access をバージョンアップしたので、これでアクセスランキングが生成されるかなと期待したが、いつまでたっても生成されない。 Sim Access にログインはできるのだが、ログも溜まらず。

プラグインとの競合を疑い、 Head Cleaner や WP Super Cache 、WP-DBManager などを OFF にしたりしてみたが効果なし。 あれやこれや悩んだ末、そういえばヘテムルの WAF(ウェブアプリケーションファイアウォール)を ON にしたことを思い出したので、ヘテムルにログインして WAF を OFF にし暫く待つ。

キターーーーー(・∀・)ーーーーー!!! 復活しました Sim Access :-P

ここ愚者の紋章は動作すようになったので、メインサイトである AnswerTaker も同じようにやってみたが、何故かこっちは上手くいかない orz

AnswerTaker は相互リンクを結んでいたりするので、アクセスランキングが表示されないのはマズイ。 しょうがないから ACR のアクセスランキングを当座貼り付け。

こっちはいつになったら解決するのか :cry:

Sponsored Link

コメントを残す