ブログを実現
→ 動作サンプル 兼 開発ブログ
=2007/1/28 トラックバック・スパムの緊急回避的対処方法=
◇ ブログが流行り始めてから、ホームページ代わりにブログを持つ方が非常に増えました。
これまでのように、HTMLエディタ等でファイルを作成してサーバにアップロードして…なんて作業は不要だし、
ブラウザ上で全てのことが出来ますからね。
◇ ブログソフトってフリーソフトで配布無いかな?と探してみたんですが、日本国内で見つからなかったので(外国語は苦手です…汗)、
RSSやトラックバックの仕組み等を今になって勉強し、楽しんで設計してみました。
◇ 画面デザインのテンプレートやソフトの設置や設定は必要ですが、設置後は掲示板のようにウェブページ上で書いたり消したりでき、
体裁も一般的なブログのようにしてみましたので、有料・無料(広告入)のブログをどこかで借りることなく使えるよう、是非ご活用ください。
◇ 画面デザインのテンプレート (base.cgi) を自分で書いた方で、みんなに紹介したいっていう方はここで公開可能です。
お名前(ニックネーム可)、ブログのURLなどを書いてそのファイル(画像付きならそれも)を送っていただければ、ここで紹介させていただきます。
◇ RSSやトラックバック機能ももちろんあります。
◇ コメントやトラックバックがあったらメールする機能(v1.10〜)。
◇ 任意の日付時間を指定して投稿する機能(v1.20〜)。
◇ コメントをコメントした人が削除できる機能(v1.50〜)。管理人がログインしなくても、管理パスワードを入力することにより、任意のコメントを削除できるようになりました。
◇ アクセス解析機能(v2.10〜)。
◇ ロボットが自動コメント投稿するのを防止するために、簡単な足し算をしてもらうヒューマンチェック機能(v2.20〜)。
◇ 携帯から読める機能と、携帯URLをQRコード(※)で表示する機能(v2.30〜)。
◇ 一括に記事の削除が出来るメンテナンスモード機能(v2.40〜)。
今後予定している仕様
今後、以下の機能が使えるように開発していきたいと思います。
あくまでも予定なので、確約するものではありません。ご了承ください。
◇ コメントするのにログインが必要な機能。
◇ 複数のライターが設定できる機能。
◇ カテゴリ分け機能。
などなど…
(※) QRコードは(株)デンソーウェーブの登録商標です。
ダウンロード
-
- - Perl5.6以上の環境でご利用ください。
- - ダウンロード (bloq_2.71.zip) (伸張&展開の仕方)
- - 添付されている README.TXT をご覧ください。特に、v1.**から移行する場合の方法と注意点が書かれていますので、必ずお読みください。
- - CGIとHTMLを別の場所に配置するサーバの場合、設置できない場合があります。
- - 設置済み状態のバージョンアップは原則的に、README.TXT の履歴に書かれている「修正があるファイル」のみを入れ換えることで可能です。
- - このシステムはフリーソフトですが、利用規定に従ってご利用ください。
解説(設置に必要な環境など)
■ 技術資料(v2.**〜)に誤りがありましたので訂正です。申し訳ありません。
誤)DefaultIndex blog.cgi(改行)
正)DirectoryIndex blog.cgi(改行)
■ 設置&取扱説明書
■ Jcodeモジュール や
Net::Trackbackモジュール が必要です。これらがインストールされているサーバ環境が必要です。
ネットで検索すると、サーバに正規インストールしないで単独各自利用する方法も紹介されていますが、
きちんとインストールした方が低負荷で安全です。用意されていないプロバイダには、それを説明して頼んでみてはいかがでしょうか?
これらはPerlモジュールであり、使える関数が増えるだけなので、その関数がそのサーバにとって危険性がないかどうかだけ確認してもらえれば、
インストールは簡単に出来るはずです。
■ root権限を持つサーバを持っている方は、ご自身でインストールしてください。Net::Trackbackモジュールのインストール時にエラーが出た場合は、
Class::ErrorHandler を先にインストールすることで成功することがあります。参考まで。
■ RSS/RDFを表示しようとするとダウンロードになる場合があります。
Webサーバの設定により、.xml は application/xml で送られてきますが .rss や .rdf はMIMEが付かなくて送られてくるなど、
プロバイダによって設定がされていない場合もあります。.htaccess が設定して使える場合は MimeType を自分で設定するか、プロバイダに依頼してみましょう。
(参考)
AddType text/xml .rdf または
AddType application/xml .rdf のいずれか一方を設定
ただ、そこまでしなくても、設定や用意するRDFファイル名を index.rdf → index.xml や index.rss に変えて設置すればいいと思います。
■ 困ったらサポート掲示板 (掲示板利用上の注意)
補足
○テンプレート(base.cgi)にSSI記述はできません。(v2.00〜)
CGI上ではSSIは実行できないからです。v2.**からはテンプレートを読み込んでCGI出力のみになりました。
アレンジ情報
ブロキューの改造方法を紹介するページを作りました。→こちらです
技術考察
・ユニコード8には EFBC8C と C2A2 と 5C というような3種類の桁数のコードが存在します。
変換処理には simaguni.pl と変換テーブル jipang8.txt を利用していますが、
文字化けの原因として、変換テーブルに無い文字の入力と、変換処理の問題がありました。
変換テーブルに無いもの以外に、変換表は合っていても、Web上でURLエンコードされて届くデータコードがそれとは違っている場合があり、
その追加や修正を行うことで文字化けを解消しています。また、変換処理では、simaguni.pl:Version 3.5b において、
e または E から始まる6桁コード以外、C または D で始まる4桁コードや 5C コードの処理がなぜかコメントアウトされていて、
処理されませんでした。理由は分かりませんが、C または D で始まる処理を復活させました。
5C "\" (全角バックスラッシュ) は、EFBCBC となるため、変換テーブルの修正にて対応することにしました。
(作者と連絡が取れないため、スクリプトのバージョンはいじらず、修正した旨を告知した上で添付しています。)
(参考文献)
http://ash.jp/code/unitbl21.htm
|