iisで導入したPHPとMySQL

そもそもことのきっかけが4月に自宅のパソコンの Vista 上にある IIS サーバーを有効化してみたところが話の発端なのだが、 これをやって、fast CGI もついでに有効化したら、なんだか勝手に Web Installer というのが導入され、localhost 上で、PHP やMySQL が設定可能な状態になっていた。これって、ASP.net や MS SQL を開発しているマイクロソフトからしてみれば、競合製品だと思っていたのだが、IIS の上では、みんな仲良く動きますよーということらしい。 それどころではなく、この Web Installer で、WordPress や Joomla! や Drupalなど、 PHP+MySQL  を使ったサイト構築ツールが各種導入できるようにまでなっている。  これには驚いた。 自分のサイト構築法は HTML と CSS +若干の javascript どまり、サーバーサイドのプログラムは手を出さないでおこうと思っていたのだが、ここまで環境を整えられると食指が動いてしまう。 (といってもつい最近まで名前を知っていたのはWordPressくらいで、 Joomla! ってJavaScriptのライブラリーかなんか、PHPも やたら?マークがついて使いにくそうなツールだなあ、と思っていたくらいでこのあたりの知識はこの1ヶ月くらいで得たものだ。)

遅ればせながらPHPとMYSQLの教科書、本屋でなるべく薄くて簡単そうなものを選びとりあえず読んでみて、なんとなく理解したと思ったので、localhost/phpmyadmin を動かしてsql 言語を試してみたりしている。

そこで気になったのがウォーニングメッセージ

1.mcrypt が導入できていません云々
2.クライエントとライブラリーのバージョンが異なっています。

という二つのメッセージが出る。 気色が悪いので、消すことはできないか、と調べてみた。

結論のみ書く。 1の問題については、Windowsに導入されたPHPはコントロールパネルのプログラムの追加・削除のパネルから変更を選んでオプションのmcryptのエクステンション導入にチェックを入れるだけで解決。(ググッてヒットする解決策は php.ini の記述をいじる、ファイルをコピーするなどの手作業を伴う。 しかしそういう作業をする必要はなかった)

2の問題はええ加減にしてくれ、である。 バージョン違いのコンポーネントは勝手に組み込まれたのだ。 これをエラー表示するとはどういうことかいな。

mysql のフォーラムに、このバージョン違いは実害はない。 phpmyadmin のフォルダーにある main.php にある当該コードをコメントアウトすればよい、という記述があったのを発見。 これを参考に、 バージョンの先頭3文字を比較して違っていたらエラーを表示する、というプログラムの部分を見つけることができたので(5.0と5.1を比較して警告を出している)、これを先頭1文字のみの比較として、とりあえずエラー警告を消すことにした。

具体的にはmain.php の341行目
... 0, 3)...
とあるところ2箇所、3を1に変更するだけである。 原因を直さないで、表示をさせないだけの方便ではあるが、これでウォーニングメッセージは消える。

この入門本、最初に「wordpress を使えば、完璧なブログサイトを30秒フラットで作れるようになっているこのご時勢、簡単に習得できるから、とか、無料で入手できるから、だけの理由だけで PHP と MYSQL を習得する理由にはならない。」と書いてある。、じゃあいったい、自分としてはどうして習得する必要があるのか?ということになるが、今のところ、知的好奇心から、という答えしか浮かばない。 というわけで、すぐに挫折するかも。

WordPressに統合中

昔、はてなで書きつづったものをWORDPRESSに統合してみた。 はてなのエクスポートでMT・TP書式を選びTXTファイルに落とした後、念のため自宅PCのテストサイトにインポートしてみたら、なんとポストの日付がすべて1970年の1月1日になるという不具合があったが、 この記事を見て解決。  この件に限らず、エラーメッセージやら現象の記述を検索窓に貼り付けてグーグル検索すると、あっという間に正解にたどり着けることが、インターネット関係の話題に限らず最近すごく多くなってきた。 ものすごく楽をしている感じ。

これで日付の問題は解決したが、ポストにつけられたコメントが反映されない。 こちらのほうはいろいろググッてみても同じような問題の報告はあっても解決したという、話がまったく見つからない。  MTのファイル書式の仕様を探し出し、これをはてなの出力と比べてみたが特に問題はなさそうだ。 これは困ったと思いながらコーデックスを眺めていたら、まったく別のコンテクストの説明で「この対策はサーバーがアパッチのときのみ有効」という一文に出くわした。 自宅のPCのlocalhostサーバーはiisである。 これはもしかしたら、と思い、だめもとで直接このサイトにアップしたところ、あっさりコメントも読み込んだ。 理由は不明なるもLINUX base のサーバーではちゃんとインポートしてくれたみたいだ。

あちこちに書きなぐっていたブログをひとつにまとめる、というのはポストするのには便利ではあるが、全体を見回してみるといかにも雑然としている。

Crashing wordpressという、 ティーンが書いたような団子文の文章で、ものすごく読みにくい本を読んでいるのだけれど、これにループをいくつも使ってカテゴリー別にページを作り分けたり、特定のカテゴリーをメインループから除外したりするやり方が説明してある。 もう少しWordPressの使い勝手がわかってきたらこのあたりをいじって少し整理をしないと、わけがわからなくなりそう。