Mar 31
XAMPPのPHPを、先週出たPHP5.3RCと入れ替えてみました。エクステンションとかかなり少ないのでちょっと不便かもしれないけど、Nucleusの動作確認くらいなら問題なく出来ます。
あくまでも、僕がためして動いただけなので、ここに書いてある通りにやったからといって動くとは限りませんが、自分用の覚え書きとして。Read More No Comments yet.

OpenID を使ってログインすることができます。

Identity URL:



Web Services by Yahoo! JAPAN

Jun 30
なんかすごい
gdb httpd
してみると、pcre があやしい
おそらく NP_Geshi の preg_replace_callback に渡される内容が長すぎるんだろうと適当に判断して、とりあえず削除
これで収まるなら google の prettify.js に移行することも考えねばなるまい・・・ No Comments yet.

OpenID を使ってログインすることができます。

Identity URL:



Web Services by Yahoo! JAPAN

Oct 28
『アイテムの日付を未来に設定して投稿した後、日時がアイテムに設定したものに達した時に、"バックグラウンドで”更新pingを送信します(可能な場合)』
これ、ユーザーに選択させるんじゃなくて(選択肢は残してもいいけど)、スクリプト側で exec() が実行可能かどうかと、使用しているサーバのOSがWindows系かどうかを判断させた方がよかないだろうか?
オプションを『バックグラウンドで送信する』に設定しても、不可能な場合は元の値に戻すようにして、『フォアグラウンドでの送信』設定の場合は eventJustPosted() での仕事は $this->justPosted に true を代入するだけにして、その後にくる event_PostSkinParse() で echo せずに送信するようにすれば、けっこうバックグラウンドっぽくなるんじゃないかと
しかし…、どこかで割り切る必要はあるのかなぁと… No Comments yet.

OpenID を使ってログインすることができます。

Identity URL:



Web Services by Yahoo! JAPAN

Oct 27
どこを探しても exec() または system() で CLI版に渡す事しか見つからない…
gopear.php なんかの事もあるからさすがに CLI版をインストールしていない環境というのはまず無いだろうけど、世の中にある格安、もしくは無料のレンタルサーバって普通に exec() 使えるんだろうか?
そもそも Windows環境だと、
exec("php $DIR_PLUGINS/ping/ping.php " . $data['blogid'] . " &")
だと何も起きないはず
最近 IIS サーバの数がかなり増えてきてるはずですが(参考)、切り捨てちゃっていいんでしょうか?
いっそのことウィンドウポップアップさせてそっちでping飛ばすとか、別ウィンドウ出すならjavascript使った方が速そうとか、色々考えて頭の中が五里夢中
そもそも JustPosted イベントとか、「そんなの cron にやらせろよっ!」って思っちゃうんですが、いかがなもんでしょ?

OpenID を使ってログインすることができます。

Identity URL:



Web Services by Yahoo! JAPAN

Oct 25
Nucleus3.31がもうすぐなんですが、このバージョンから更新pingの送信がコアから外れてプラグインになります
今は更新pingを複数のサーバに送信する際には、NP_SendPingを使ってるわけですが、NP_Pingは送信先サーバが追加できません(出来るけど直接ファイル書き換えなきゃならない)
『フランス国内からしか受け付けません』とかトップページに書いてあるサーバまでリストアップしてあるし、GoogleにもYahoo!にも送信していません
リストの最後にあるところは、多分登録会員専用のトコだし…
ということで、最新版を元に大改造中
もちろん、NP_SendPingのコードをマージして、再編集後のping送信にも対応です
デフォルトの送信先もいくつか追加しました
ここで問題
更新ping送信先が一杯あるとどうなるでしょう?
答え:レスポンスの遅いところに足を引っ張られて、一番最初にpingしたところがサイトを確認しに来た時に、まだ全部のping送信が終わってない事がある
これを避けるためには並列処理が必須
もっと言うと、『更新ping送信自体をNucleusの外に任せた方がいい』んだけど、そこまではプラグインでは出来ないので…
話は変わって、『pingをバックグラウンドで送信』ってオプションがあるんですが、これ、CLIのphpに任せてます?
FreeBSDのportsってば、『CLIをインストールしない』オプションなんてのがあるんですが、CLIインストールしてないサーバだとどうなるんでしょう?
てかexec使っていいなら、ping送信そのものを全部execしちゃえば、(少なくともNucleus自体のレスポンス的には)並列処理とか考えなくていいんじゃ?

OpenID を使ってログインすることができます。

Identity URL:



Web Services by Yahoo! JAPAN