ウェブマスターフォーラム

Web 制作 (SEO, SEM, CSS, Web デザイン等) に関する話題を扱うフォーラムです。

ログイン

新規ユーザー登録 | パスワードを忘れた

テーマ : プログラミング

リンク : フォーラム | Su-Jine | ブログ | HTML PING WORLD | ポイ探 | 広告について

  みんなで作る価格比較サイト 買いログ

東京オフ会予定 3/1 (土)
大阪オフ会予定 2/23 (土)
オフ会FAQ

Perl, PHP, ASP, JavaScript 等の Web 系プログラミングに関する話題を扱います。

トピック : CGI/Perl全般について

次の古いレス20件 << 最新のレス20件 >> 次の新しいレス20件

No.1 - 2005年12月03日 11:37
アラー (44ポイント)
いまCGIを学習してます
PHPの方が負荷は少ないらしいですが
CGIは既存の掲示板などが豊富にあり
そこから少しずつカスタマイズすることで
自分の理想のプログラムを手に入れることが出来ます

ということで、CGIについて何かあれば話しましょう

参考になったサイト:http://www.aimix.jp/cgi/syohoidx.html
No.2 - 2005年12月17日 14:20
96969+ (10ポイント)
いつも参考にさせて頂いています。

以前、seoコンテストでトラックバックを打つと自動的に返すサイトがございましたが、どのようにすればトラックバックを自動で返せるようになるのでしょうか?

非ブログサイトでもそのようなシステムが出来るなら、アクセスが稼ぎに非常に有効だと思い、書き込ませて頂きました。

よろしくお願いします。
No.3 - 2005年12月17日 15:21
幸之介 (84ポイント)
PHPでなら自動トラックバック返しを書いたことがあります。
トラックバックを受信したら、大まかに次の手順を踏みます。

1. 相手のページを読みに行き、相手の trackback:ping URLを取得。
2. POSTリクエストを直接書く。
3. ソケットを開いてPOSTリクエストを送信。

perlでやるなら、たとえば既存の tb.cgi のようなファイルに、上記の手順を追加すればいいでしょう。
No.5 - 2005年12月18日 08:21
96969+ (10ポイント)
ご回答ありがとうございます。

とても私にはわかりそうにないので、友人に書いてもうおうと思います。

どこかに配布されていないのでしょうか?
ご存じの方がいれば教えて頂ければと思います。
No.6 - 2005年12月18日 13:00
幸之介 (84ポイント)
PHPなのでどのくらい参考になるか分かりませんが、コードも貼り付けておきますね。
以下のスクリプトでは、自分からのトラックバック送信内容は固定になっているので、受信した記事ごとに違う内容を打ち返したい場合は、少し改造が必要です。

// ■トラックバック返信関数
function tb_back($tb_url){
// tb ping URLの取得
$source = file_get_contents($tb_url);
preg_match_all("{<rdf:RDF.*?<\/rdf:RDF>}s", $source, $source_rdfs);
foreach($source_rdfs[0] as $rdf){
while(preg_match("{dc:identifier.*?\"$tb_url\/?\"}s", $rdf)){
preg_match("{trackback:ping.*?\"(.*?)\"}s", $rdf, $source_rdf);
break 2;
}
}
$ping_url = $source_rdf[1];

// POST先URLの整形
$url = parse_url($ping_url);
if($url['query']){
$post_url = "$url[path]?$url[query]";
}
else{
$post_url = "$url[path]";
}

// POSTリクエストの整形
$mytb_title = mb_convert_encoding("記事タイトル", "UTF-8");
$mytb_excerpt = mb_convert_encoding("要約", "UTF-8");
$mytb_url = "URL";
$mytb_blog_name = mb_convert_encoding("サイト名", "UTF-8");
$post = 'title='.urlencode($mytb_title);
$post.= '&excerpt='.urlencode($mytb_excerpt);
$post.= '&url='.urlencode($mytb_url);
$post.= '&blog_name='.urlencode($mytb_blog_name);
$request = "POST $post_url HTTP/1.0\r\n";
$request.= "Host: $url[host]\r\n";
$request.= "User-Agent: PHP/".phpversion()."\r\n";
$request.= "Content-type: application/x-www-form-urlencoded; charset=UTF-8\r\n";
$request.= "Content-Length: ".strlen($post)."\r\n\r\n";
$request.= "$post\r\n";

// POSTリクエスト送信
$fn = fsockopen($url['host'], 80);
fputs($fn, $request);
fclose($fn);
}
No.7 - 2005年12月20日 11:41
96969+ (10ポイント)
ご丁寧に返信頂き誠にありがとうございます。

初心者ですので、探り探りやって行きたいと思います。
No.8 - 2005年12月23日 18:13
アラー (44ポイント)
CGIとPHPってだいたいどれぐらい負荷が違うんでしょう?
No.9 - 2005年12月24日 05:30
幸之介 (84ポイント)
perlで作られた一般のcgiと、mod_perlに対応して作られたcgiとでは、ぜんぜん違うはずです。
前車はかなり遅いですが、後者であれば、phpとよく比較されます。

phpとperlとmod_perlの比較
http://www.ryuichi.jp/computer_memo/etc/template_time_match/

phpとmod_perlの速さは一長一短だという報告
http://www.freespace.jp/~Pooh/Foolish.html

次の古いレス20件 << 最新のレス20件 >> 次の新しいレス20件

Copyright © 2010 Web 制作フォーラム by Su-Jine All rights reserved.