Jul 28, 2008

Yomiサーチ相互リンク確認システムの設置

ポスト @ 18:58:49 | CGI日記

Yomiサーチに相互リンク確認システムを導入して3週間、何とかトラブルも無く動作しているようです。
先週別サイトへも導入してみました。
そちらの方は1日400~500くらいのアクセスがありますが別にトラブルも無く順調です。
ただ一部のサイトから相互リンクをしないで登録申請されました。
登録ソフトによるログに直接書き込んだ?
対処、ログファイルのファイル名ys4_tempを別のものに変更した事で不正はなくなりました。
という事で、今回CGIPerl版相互リンク確認システムの設置方法を紹介します。
最初に貴方のサイトでPerlライブラリが使えるか確認します。
ライブラリは二つあります。
LWP::UserAgent WWW ユーザ・エージェント クラス
HTTP::Request HTTPリクエストをカプセル化するクラス
Yomiサーチサーバー設置先にお尋ねください。
自鯖の場合は確認して無かったら導入してください。(CAPANより入手可)

手順1:
相互リンク先ドメインのチェックから入ります。
登録サイトとリンク設置先ドメインが違っていれば他の設置先を使って登録されますので出来ないようにします。

Yomiサーチ template log と同じフォルダに 新規にinclude フォルダを作成します。 そのフォルダの中に Mutual_Check.pl というファイルを作成します。

ソースコード:相互リンク先ドメインのチェック

sub Url_Check {
#*************************
# リンク登録先 $regurl
# リンク設置先 $linkurl
#*************************
my ($regurl,$linkurl) = @_;
my $rtn = "";
# リンク登録先
my $findreg = index($regurl,"/",7);
if ($findreg == 0) {
$findreg = length($regurl);
} my $Url_Reg = substr($regurl,0,$findreg);
# リンク設置先
my $findlink = index($linkurl,"/",7);
if ($findlink == 0) {
$findlink = length($linkurl);
}
my $Url_Link = substr($linkurl,0,$findlink);
#URLの比較
if ($Url_Reg ne $Url_Link){
$rtn ="Un_Url";
}
return $rtn;
}

リンク先URLと設置先URLを整形して比較、問題があれば結果(Un_Url)を返します。
次に相互リンク設置先の確認に入ります。


ソースコード:相互リンク設置先のチェック

sub Check_Links {
#************************************
# 相互リンクチェック先 $Ch_Url
# 相互リンクを確認する $Mu_Url
#************************************
my ($Ch_Url,$Mu_Url) = @_;
my $msg="";
# モジュール使用宣言
use LWP::UserAgent;
use HTTP::Request;
#チェックURL
my $cu = "$Ch_Url";
my $mu = "$Mu_Url";
my $ua = LWP::UserAgent->new;
my $request = HTTP::Request->new('GET', $cu);
my $response = $ua->request($request);
if ($response->is_success) {
$content = $response->content;
if ($content =~ /$mu/im) {
} else {
#There is no Mutual
$msg = "リンクが見当たりません、あなたのサイトへリンクを設置後
登録\申\請して下さい.";
}
} else {
#There is no Link.
$msg = "リンクが設置されているURLに入力されたURLは存在しませんでした.";
}
return $msg;
}

ライブラリLWP::UserAgent HTTP::Request を使ってチェックし問題があれば結果を$msgに返します。
以上2つサブルーチンをMutual_Check.pl に書込み保存します。
これをYomiサーチへ組み込みます。 (Wink)

組み込み方法の解説はhttp://www.knts.net/でユーザー登録をして頂きログイン後メニューお役立ち情報からリストCGIのカスタマイズをお読みください。

※ 最後にこの相互リンクスクリプトはリンクウェアですので宜しくお願いします。
設置先KNTS-WEB Search&Shopping!!

Jul 04, 2008

Yomiサーチ相互リンク確認システム?

ポスト @ 18:16:06 | 検索エンジン関連

Yomiサーチに登録する際、相互リンクが条件のサイトが結構増えてきました。
しかし、どの検索エンジンを見てもほとんどが設置アドレスを入れるだけで確認作業は管理人自らサイトを訪問して確認しているのが現状だ。
登録者の中にはリンクする意思がないにも関わらず適当なアドレスを入力するだけで実際リンクがされていない登録者も増えています。
または登録されたらリンクしようと考えている方も多い
ではなぜこんな事をするのだろう?

原因の一つとして、検索エンジンサイトの相互リンクを条件にしリンク後の登録を促しているサイトが結構多い、登録者はリンクを張るのだが、検索サイトによっては数ヶ月放置、結果登録にはなかなか至らない、検索エンジンを立ち上げる事は立ち上げたものの放置しているサイトが結構多い。
当サイトがサイトを立ち上げ2ヶ月とちょっとですが、検索エンジンへの登録を約1000サイト登録するも約1/3はまだ登録されていない。(多分そのほとんどが登録には至らないだろう)
管理できない検索エンジンなら仮登録制などとらず即登録にすべきだと私は思う。

検索サイト運営者の皆さんこんなサイトがあるのはご存知ですか?
Yomi-SearchのSEO的改造プロジェクト

PHP版のYomi-Searchに登録する場合に、自動で相互リンクの設置確認機能をつける方法登録時に相互リンク設置確認を自動化し、バナーURLに相互リンク設置URLを格納することにより、相互リンク継続確認も可能にする。(引用)

これなら登録者も安心して登録が出来ますね、またサイト運営者も確実にリンクされているのですから、お互い良いですね。
しかしPHP版ということでPHPが使えないサイト(サーバー)では設置不可能です。
CGI、Perlなら使えるんですが、SEO的改造プロジェクトさんのようなPerl版を提供してくれる方はなかなか見つからないというか無いんじゃないんでしょうか?(あったら教えてください)
Perlでは出来ないんでしょうか?WEBでいろいろ調べてみました。
結果、出来る事が分かりました。

河馬屋二千年堂's Page
このページはPerlライブラリについて解説されています。 リンクを確認するには、
LWP::UserAgent WWW ユーザ・エージェント クラス
HTTP::Request HTTPリクエストをカプセル化するクラス
が必要と分かりました。
使い方も結構詳しく解説してくれています。 問題はこの2つが実際サーバーに組み込まれているかです。
実際レンタルサーバをチェックしてみたら、私の借りているサーバーには組み込まれていました。
PHP版、Perl版のどちらか使えるのであれば結構いろんな方が使えると思います。
CGIPerlをある程度理解している方なら設置は可能です。
しかしPerlについて理解しない方はいろんな問題があります。
Yomiサーチへの組み込みも結構面倒です。

Yomiサーチへの設置はSEO的改造プロジェクトさんのページを参考にさせて頂きました。
現在当サイトでテストをしております。
当サイトYomiサーチ検索エンジンへ登録してみてください。
完璧なものであったら公開します。(ちょっと自信が無い)
是非登録ご協力お願いします。 (Wink)
Yomiサーチへ登録 当サイトでは管理をしっかりする・登録を放置しないという事で仮登録にしてあります

PickupBannerVer0.90β 配布

ポスト @ 0:18:55 | CGI日記

PickupBannerVer0.90β 配布開始しました。
ダウンロードは左メニューFilesより行えます。
任意のサイトへJavaScriptを埋め込めばピックアップされたサイトのバナーが表示されます。
正規版ではないので問題等あればお知らせください。
ダウンロードは利用規定を良く読んでご利用ください

こんな感じに表示されます。

リンク集のページ
設置構成
解説はこのブログ内テスト公開を読んでください。

自動登録相互リンクより先に配布する事になりました。
自動登録相互リンクは只今動作テスト、修正を加えて早期にアップしたいと思っています。
もうしばらくお待ちください。 (Frown)

ps
utf-8 eucページに表示させるにはIFRAMを使えばOKです。(作成例は設置構成に記述済み)
このページはutf-8ですが問題無く表示されていますね。(IFRAM内はs-jisです)

7月27日:修正版アップ
ログファイルpickup.pl Java pickup.js の2点 テスト用ファイルがそのまま圧縮してしまった事が判明

Jun 30, 2008

PickupBannerVer0.90βテスト公開

ポスト @ 19:32:22 | CGI日記

JavaScriptを使って任意のページにバナーを表示させるスクリプトです。
CGIページはリンク集として公開されますが動的なリンク集です。

1.登録数を設定してその登録数を越えた場合古い登録より削除なる設定
削除された方は再登録をする事になりアクセスアップが期待されれば定期的に訪問してくれると思います。?(目立つ所にピックアップバナーを表示してPRしてください。)
あまり登録数を多くしない事

2.登録数が規定に達したら登録できなくなる設定
こちらは限定数の相互リンク用に利用すると良いでしょう。
ちょっと多めの登録数で相互リンクを増やしてください。
またスクリプトをindex.cgiにすればデレクトリにアクセスさせ静的にみせる事が可能です。
このリンク集はページ送りが無いので設置アドレスは変わる事がありません
引き数も持たないので通常のHTMLと同じ扱い?

2種類のどちらかを選択する事が可能です。

承認機能
管理人が承認しないと掲載されない方法と自由に掲載される方法のどちらかを選択します。
自由登録の場合あなたの好まない不適切なサイトの登録があると思います。
承認機能を使った場合ちょっと面倒ですが定期的な管理が必要になります。

キーワードによる制限
自由登録の場合、予めキーワードを設定する事によりある程度登録を制限する事が可能です。
キーワードは常時追加可能です。
また連続登録などによる登録も制限可能です。

サンプル掲載ページ:リンク集
バナー設置ページ:トップページレフトメニュー最下段にて公開中

配布予定:出来るだけ早期に配布する予定です!! (Laugh)

ps.テスト公開中の自動登録相互リンクへの登録お願いします。

Jun 25, 2008

Clip-LinkVer0.90β ページ送り?

ポスト @ 18:40:46 | CGI日記

Clip-LinkVer0.90βをダウンロードされ、お使いになられている方へ
html表示の最下段のlink:ここで2ページ目、3ページ目と表示させるんですが…
ページの切り替え時に2ページ目のリンクが付かない訳
htmlが格納されているフォルダを自動で収集しているため2ページ目のファイルが初期状態では空なのでリンクが付きません
動的な状態(新着では表示されていますが、)
1ページの表示数が20件として21件目を登録して更新しても先に1ページ目が生成されていてその時点では2ページ目が存在しないため2ページ目がリンクが付きません
構わず次の登録を行っていれば、1ページ目の更新時に2ページが存在すればリンクが付きます。
もしリンクが付かない状態でしたら再度1ページ目更新、2ページ目更新とやってみてください。

Jun 24, 2008

検索エンジン登録者のマナー?

ポスト @ 10:44:13 | 検索エンジン関連

検索エンジンを始めて2ヶ月経ち登録申請も徐々に増えて来てます。
ですが、登録に至るサイトは1/3ほどになります。
とにかく登録者のマナーが悪くサイトを審査する気にもならないサイトが多すぎます。
他の検索サイトが登録条件を厳しくする気持ちが良~く分かってきました。

当サイトで登録に至らないサイト、登録フォームでの確認
・タイトルにキーワードを入れてくる。
タイトルは正式タイトル名または社名などを入れる
・虚偽のリンク設置
当サイトは先にリンクをして頂いてから登録する規定になっているにも関わらずリンクをしない(2日は待っている)
また、リンク確認先フォームが「カテゴリの追加」を代用しているため、自動登録ソフトからの誤った表示がされている。(自動登録は許可していません)
・サイト説明文が短文でここにサイトタイトルを入れている。
せっかく登録するのですからきちんと説明文を入れて欲しい
・カテゴリが正しくない
自動登録ソフトでの登録なのか嫌がらせなのか、適切なカテゴリでは無い
とこんな感じです。

対策として、今回自動リンク確認システムを導入しました。
自動登録確認リンクシステムとは
1.登録サイトとリンク先ドメインが一致しなければ登録申請が出来ない。
2.リンク先に当サイトのリンクが設置してあるか確認、リンクが無ければ登録申請ができない。
この2点をチェックして問題が無ければサイト確認後登録をする。
また2日経っても登録されないのは利用規定を無視したサイトまたはコンテンツに不備があるサイトです。(登録に至らないサイトは速やかに当サイトリンク設置先を外してください。)

Clip-LinkVer0.90β 修正

ポスト @ 9:54:11 | CGI日記

新着情報画面でのXHTML1.0の検証で1部問題箇所を修正
ページ送りが空の場合のテーブルタグが正常でない!

<table><tr>

</tr></table>
と表示されてしまう。
修正箇所:
clip.cgi
182行目付近の1箇所です。
<table><tr><td><img src="img/1point.gif" alt="d" /></td>
1point.gif画像はtd内を空にしないためのダミー画像です。1x1の透過gifを作成してimgフォルダへアップします。

・html表示だけの公開であれば問題でありません。
・修正しなくとも表示上は問題無いがXHTML1.0の検証で引っ掛かります。
全体を見直し只今修正版を作成中です。
ダウンロードされた方はご自分で修正してもOk!ですがスクリプトの記述は注意して行って下さい。
修正版を待って置き換えてもらっても結構です。(スクリプト動作に問題無し) (Wink)

以前のログ