さて、いろいろと tool がある中でなぜ pMachineにしようと思ったか、なんですが、MovableTypeをしばらく使って、「やっぱ便利やわ…」という感想に達し、いろいろ探した結果pMachine の存在を知り、(お、このサイトのtitleと頭文字が一緒じゃん)と思ったからです。p で m なところがね。
さっそくですが以下動作させるまでのメモ。 まずはこっからpMachine2.3(Free)のzipをダウンロード。(Permission が最初から設定された tar.gz の方がありがたかったのだが…)
んで http://www.pmachine.com/docs/installation.html を読む限り、PHP4 と MySQL が要るってことでその準備。(余談だけど、なんで blog tool は DBMS を使いたがるのだろう。MT でも DB から呼んだコンテンツ(とその管理情報)から静的なファイルを作ってたけど、同じ静的ファイルを作るだけなら、ファイルシステムから生成するのと処理コスト的に変わらないのでは。あ、DB のスキーマが固定的だと、自由フォーマットなファイルを読み込むのと違って変なファイルが混じった場合とかの例外処理を減らせるからかな)
以下、伸長すると pMachineFree2.3 と名乗るフォルダを$rootと置き換えます。
$dbusernameこれらを指定しないといけないってことは、pMachine 入れる前に MySQL の admin によってユーザーが作成されてないといけない。特に何も考えず install された MySQL であれば(商用サーバでそれはないだろうが…)
$dbpassword
$ mysql -uroot mysqlで、user 情報を持つ db にアクセスできるので、そっから grant すればいいんだな。(OSのユーザーとMySQLのユーザーは独立してるからね。http://www.mysql.jp/mysql/Manual/ など参照)
$languageという variable が設定できる。DEFAULT LANGUAGE OPTION を決めるのだが、もちろん Japanese pack はないので English のままにしておく。(Japanese pack はちょっとだけ自作してみたが、よく考えたら俺しか使わないんだから、と途中で辞めた。)
$script_directory_name = "pm";となってるところを、 $script_directory_name = "$changed_pm"; とするということね。探してみると、
$root/calendar/pm_inc.phpの4つについて変更がいるのね。変える場所は全部一緒だ。
$root/members/pm_inc.php
$root/pm_inc.php
$root/search/pm_inc.php
$root/images/uploadsディレクトリだけ chmod 777 します。telnet だけでなく、ftp client からもできたはず。
's/iso-8859-1/Shift_JIS/g'の置換を、それぞれディレクトリのサブディレクトリ全てでやるといいから…えーと、どうすんだ?
find . -name "*.php" -print | xargs -i perl -p -i.bak -e 's/iso-8859-1/Shift_JIS/g' {}で一発ドンだな。(本当は Windows-31J としたいが、ブラウザがわかってくれないため…)
↑改行して見えるかもしれないけど一行でね
find . -name "*.bak" -exec rm -f {} \;とすると .bak は全部消えます。俺 find と xargs しか使わないのが癖になってるな。
ln -s weblog.php index.phpとリンク貼っちゃいましょう。んで、apache 側には、index.php が index として有効になるように、
なんて加えちゃいましょう。<IfModule mod_dir.c> DirectoryIndex index.html index.shtml index.cgi index.htm index.php </IfModule>