cronの設定 – はてなブックマーク -> MovableType[4]

というわけで、全ての設定が終わりました。 動くことも確認できたら、cronの設定を行いましょう。 が、その前にやることが。 このままでcronを実行しても、

Can't locate Net/MovableType.pm in @INC (@INC contains: /usr/local/lib/perl5/site_perl/5.8.4/mach
/usr/local/lib/perl5/site_perl/5.8.4
/usr/local/lib/perl5/site_perl/5.005 /usr/local/lib/perl5/site_perl
/usr/local/lib/perl5/5.8.4/BSDPAN /usr/local/lib/perl5/5.8.4/mach
/usr/local/lib/perl5/5.8.4 .) at ./hbm.pl line 9.
BEGIN failed--compilation aborted at ./hbm.pl line 9.
というエラーが吐き出されてしまいます。 このエラーの意味は、
Net::MovableTypeが、指定されたディレクトリに見つからない。 (指定されたディレクトリとは…)
ってこと。 ローカル領域を、自分で作成して、 そこにモジュールをインストールしたので、 その場所をサーバに設定してあげないといけません。 それが分からなくて暫くはまりました。 エラーは良く読みましょう(汗) Plagger向けのcron設定である、この辺りを参考に。 suVeneのあれ: crontab 設定の小話 さくらインターネットのコントロールで設定する場合、 まずcron設定を開き、その中の、環境設定に関する部分、を参照。 そこの、『環境変数』に、PERL5LIB、 『環境変数の値』に、/home/konaze/local/lib/perl5:/home/konaze/local/lib/perl5/site_perl と入力して、『追加』を押せば完了。 設定後は、このように表示されます。 cronの設定は簡単で、
cd /home/path/to/; ./hbm.pl
てな感じを、『実行するコマンド』に入力しておけばOK。 時間設定は…常識の範囲内で。 以上で、正常に更新されていくと思います。

続きを読む

POST用プログラムの用意/設定 – はてなブックマーク -> MovableType[3]

では、準備も整ったので、プログラムを入れてみます。 プログラムは、先ほどの2サイトのどちらからか、ダウンロード。 はてなブックマークを Movable Type に Post する : NDO::Weblog ヒビノアワ: はてなブックマークをMTにエントリするスクリプト naoyaさんの方は、エントリ内にあるソースをコピーし、適当に名前を付けて保存。 また、そのプログラムと同じディレクトリに、template.htmlと言う名前でテンプレートを作成します。 テンプレートのサンプルはソースの下にあります。 Cheebowさんの方は、hbmアーカイブというリンクからダウンロード。 解凍すると、naoyaさんの場合と同じく、 実行プログラム(perl)と、テンプレートが出てきます。 実行プログラムの方をテキストエディタで開いて設定を編集し、 (詳細は上記サイトを参考にしてください) これらをまとめて、お好きな場所にアップロード。 次に、Telnetなどで、これらを実行し、

% perl /home/path/to/hbm.pl
モジュールが不足なく入っていれば、ブログに無事、投稿されます。 なお、naoyaさんの方では、カテゴリの指定がありません。 カテゴリを指定したいという人は、 例えば下記のように、カテゴリを追加することが可能です。 141 WebLog: はてなブックマーク 最後に、cronを設定して、 定期的にアップされるようにしておけばOKです。 さくらインターネットにおけるCronの設定に関しては、 こちらを参考に設定してみてください。 NOBODY:PLACE – MUTTER: 指定日投稿 – さくらインターネットでの設定 ※例えばこんな感じ
/usr/bin/perl /home/path/to/hbm.pl >/dev/null 2>&1
…と思いましたが、はまってしまいました(苦笑) 早い話、モジュールの場所が自分で作ったローカル領域にあると言うことを、 指定してやらなくちゃいけないんですね。 というわけで、 以上、はてなブックマークを投稿する、まとめでした。 続きます。 » cronの設定 – はてなブックマーク -> MovableType[4]

続きを読む

CPANを利用してモジュールをインストールする – はてなブックマーク -> MovableType[2]

CPANのインストールが終われば、次は、モジュールのインストール。 必要なモジュールは各プログラムに記述されています。 今回の目的は、はてなブックマークをMovableTypeを通して、 ブログにアップするということなので、 それらのプログラムを配布しているサイトでチェックしてみると、 はてなブックマークを Movable Type に Post する : NDO::Weblog

Encode
HTML::Template LWP::Simple Net::MovableType Time::Piece XML::RSS
ヒビノアワ: はてなブックマークをMTにエントリするスクリプト
DateTime XML::Atom::Client HTML::Template Net::MovableType
となっています。 現在インストールされているモジュールは、 さくらインターネットの場合、コントロールパネル内の、 サーバ情報の表示から見ることが出来ます。 それによると、上記リスト内の、赤字のものがないっぽい。 テストでは、Cheebowさんのプログラムを利用させていただいたので、 必要なモジュールは、あと、Net::MovableType。 Telnetから、
cpan>install Net::MovableType
で、自動的にインストールされます。 もし気になるのであれば、 他の必要モジュールもインストールしてみます。 (最新版であれば、『up to date』と表示されてインストールは行われません) 以上で、準備はOKです。 では、プログラムをインストールしてみます。 » POST用プログラムの用意/設定 – はてなブックマーク -> MovableType[3]

続きを読む

さくらインターネットでCPANを利用できるようにする – はてなブックマーク -> MovableType[1]

はてなブックマークからMovableTypeを使ってブログにアップするには、 基本的には、それを実行してくれるプログラムを、サーバ上で動かす…だけで可能です。 プログラムは、通常サーバにあるもの、または公開されているもの、 MovableTypeが用意してくれるものを利用するので、 まずはその準備をする必要があります。 その際に、ルート権限を持たない、 ローカル領域を利用している人(つまり要するに、共有サーバとかですね)は、 portsが利用できないので、インストールが面倒です。 WEBで探してきて、ダウンロードして、 アップロードして、手動でインストール…です。 CPAN(perlモジュールなどを配布している場所)を利用して、 ローカル領域にインストールできるようにすると、大変便利で吉。 というわけで、以下のサイトを参考にして、 ローカル領域にCPANをインストールしてみましょう。 otsune’s FreeBSD memo :: ユーザー領域にCPANをインストールする方法 これに関しては特に説明するところがありません…(苦笑) さくらインターネットの場合には、 Telnetでサーバにアクセスした上で、 上記サイトを参考にして、設定、インストールを行えば、 何も問題なく稼働します。 SAKURA Internet : サポート/お問合せ : オンラインマニュアル : TELNETで接続する CPANをインストールする際に、 若干時間が掛かることがありますが、放置しておけばOK。 長くても10分くらいで終わります。 CPANがインストールし終わったら、必要なモジュールを入れましょう。 » CPANを利用してモジュールをインストールする – はてなブックマーク -> MovableType[2]

続きを読む

はてなブックマークをMovableTypeにPOSTする…ために。

ふと、思い立って、 自分のはてなブックマークを、MovableTypeにPOSTするようにしてみました。 とはいえ、以前一度やろうとして止めた記憶があるので、 そう簡単にはいきません。 特に、サーバが共有サーバ(さくらインターネット)だしね。 なかなか難しいです。 でも、結果的には、上手くいきました。 というわけで、その過程でも。

続きを読む

SQLiteのサイズを小さくする。

# 理屈をよく分かって書いているわけではありませんが

5か月ほどspamの処理ができていなかったために、データベースが異様に肥大し、200MBを超えるようになりました(中略)管理画面からspamを削除したのですが、それでも一度大きくなったSQLiteのデータファイルは小さくならないようで、MTが異様に重くなっています。(中略)さて、どうしたら解決できるでしょうか。
あー。確かに。 このご時世、多少なりともトラフィックあるブログが5ヶ月もほっとかれたら、 どんな悲惨なことになるか、容易に想像が付く… 僕も、SPAMを消したり、再構築したり、 なんやかやとしてるんで、多分だいぶゴミが付いてると思うんだよね。 一度スッキリさせてみたい。 で、松永さんのダイアリの方に、 有効そうなコメントが付いてたので、それを参考にしてやってみました。

続きを読む

トラックバックSPAM対策。

MovableTypeのフィルターが優秀とはいえ、 毎日とんでもない数のトラックバックSPAMが襲来しているため、 それに対する対策を講じてみました。 参考(というかきっかけ)にしたのは、GIGAZINEのこちらのエントリ。

ブロック方法は主に2つ。1つめはトラックバック用のアドレスを取得するサーバをブロックする方法、もう1つはPOSTに含まれている特徴的なUserAgentをブロックすることです。
要はですね、今までトラックバックの中身を見て、 取捨選択してたわけですが、 トラックバックを無作為に送るサービスとか乱立している現在、 もう送信元をアクセス禁止にしてしまおう、ということですね。 (本当は、GIGAZINEの有効期限付きのランダムなTB URLが欲しいけどね) まずは調査からだってんで、 サーバのアクセスログのうち、TB用プログラム(mt-tb.cgi)にアクセスしてきていて、 200を返しているアクセスの、HOSTとUAをリストアップしてみた。 (簡単なプログラムを作成して、ローカルで実行)

続きを読む

httpd.conf/.htaccessに関するメモ。

カテゴリー『Programing』なんて振り分けるのも恥ずかしい話ですが、 とりあえず二度と繰り返さないように、メモっとく。 Apacheの設定を、httpd.conf/.htaccessに記述する際に、 #を付けることでコメントアウトできる。 ただし、行の途中からコメントアウトするときは、クオートで囲むこと。

× deny from 211.4.250.0/24# BOT ○ deny from 211.4.250.0/24“# BOT”
万が一クオートし忘れると、 以下のようなエラーが大量に吐き出されて、 エラーログがえらいことになる…
[Tue Apr 15 23:54:15 2003] [warn] apache does not support line-end comments. Consider using quotes around argument: “BOT”
というわけで、 行末にコメントを付けるようなやり方は止めて、 以下のようにしておくのが無難である。
# BOT deny from 211.4.250.0/24
以上、覚え書きでした。 あーあ。

続きを読む

障害と情報公開。

最近、さくらインターネットの障害情報があわただしい。 さくらインターネットの障害情報は、RSS配信に対応しているので、 例によって、DELCO READERに突っ込んでいるんだけれども、 どうもこのところ、レンタルサーバ、DNSサーバ、MySQLサーバ、その他色々と、 緊急メンテナンスやら、障害やらが頻繁になされているようだ。 障害情報というのは…難しいところにあると思う。 情報公開という意味では、積極的に公開してくれるのは嬉しい、 でも同時に、おいおい大丈夫か、という気にもなってしまう。 情報を公開する側としては、その辺、ジレンマなんじゃないだろうか。 下手に隠せば、それはそれで、信用できない、とか言われるだろうしね。 やっぱりあれかな、ブログ機能の搭載が、サーバ的に負担になってるのかな。 僕は必要ないんで利用してないけど、 そのせいで、サーバが落ちてる可能性はあるなぁ。 止めときゃいいのにねぇ。 重大な何かが、うちのサーバに起きないことを祈っとります。

続きを読む

.htaccess/robots.txt再定義。…冤罪救済のため。

以前からお伝えしているとおり、 BOTや不明なUAに対して、かなり厳しいアクセス制限を敷いているわけですが、 知人の連絡を受けてアクセスログを細かくチェックしてみると、 どうも、冤罪の方が多くいるらしい。 僕としてはそれほど変化球なアクセス制限ではなく、 在る程度理屈の通った指定しかしていないつもりなんですが、 403出されている事実は、事実だし。 ということで、アクセスルールを一旦リセットして、 再度、構築し直すことにします。 アクセス制限は、SPAMとサーバ負荷の削減が目的です。 なので、基本的には、怪しい収集をするBOT、ダウンローダー、 SPAM書き込むが目立つ海外プロバイダなどを制限します。 要するに、従来通り、WWWCなどによる更新チェックや、 Webfetchなどによる、ローカル保存はお断りします…と、 あらかじめ申し上げておきます。 そもそも、RSS配信しているサイトに対して、WWWCなどを巡回させること自体、 現代ではナンセンスなことだ、と僕自身は思いますけど。 (いや、その昔、僕もユーザでしたけど。アナログ回線時代) 皆様のご協力をお願いいたします。

続きを読む