前までの記事の続き。
PHPが動くところまでいったが、いざEasyBotterを動かしてみると、よくある? 下記エラーが表示されました。
足りなければ自由に追加できるし、動かしてやるーとぽちぽちやりました。
ひとつひとつ検証したわけではないですが、以下のExtensionを入れると動作しました。たぶんいらないもの多数あるかと(地道に調べるのは面倒なので容赦してください)
とりあえずマイPCでテスト用でEasyBotterが動けばそれでいい! という人は参考にしてください。
【いれたExtension】
├Extentions
│ ├Curl
│ ├ GD2
│ ├ Multi-Byte String
│ ├ Mhash
│ ├ Mimetypec
│ ├ Openssl
│ ├ Pspell
│ ├ Sockets
│ ├ Sybase
│ ├ XML+RPC
│ ├ XSL
│ ├ zip
└Extras
└ PEAR install
以下、補足(というか追加の仕方)
Extensionの追加ってどうやるん? って言うのは、PHPをインストーラでいれた場合は、「プログラムの機能」から追加することができます。
ZIPから圧縮解凍してPHPを構築した場合は、php.iniで該当するdllのコメントアウトを外せばよいかと思います。
手順
(1)「プログラムの機能」からPHPを選択し、「変更」を押す
(2)インストーラの指示に従い次へ。三つボタン出てきたら「change」で
(3)どのCGIですかは「FastCGI」のまま
(4)有効にするエクステンションを聞かれるので、必要なものをオンにしていく
(5)インストーラの指示に従い次へ次へで完了させる
(6)IIS再起動
ご参考:うちの環境
WindowsVista Home sp2
PHP Version => 5.2.14(インストーラからインストール)
EasyBotter2.04beta
構築四苦八苦はこっちの記事参照↓
・ 結局自分とこにPHPを立ててみる。
ずっと言ってたTwitterBOTでのプロフィール画像変更処理の続き。
例のAPIの件は復旧したようなので(※2010/8/7現在復旧してません)相変わらずがりがりとやってみてるんだけど、やっぱりプロフィール変更がうまくいかない。
もしかしたらatPagesがダメなの?(atPagesのサービス仕様で外部ファイル呼び出しNGがあるがこれが関係している???)
…というわけでスクリプトが悪いのかatPagesが悪いのかを切り分けするため、自分PCにPHPをたててみることにした。
なんかものすごく回り道してますが…
WindowsVista(Home)+IISという環境での構築になりました。
えっと、罠が罠でなかなか動かず大変でした。
いろいろやりすぎてgdgdですが、うまく動かなかったときの切り分け参考でキーワード載せときます。
技術性にはかけるので、気になったキーワードでぐぐってください(なんという丸投げ)
(IISのインストール系は省きます。ぐぐれば良いページ一いっぱい見つかります)
(インストールしたPHPは 5.2.14。「Non Thread Safe」のインストーラでインストール)
■isapとFastCGI
Vista環境なのでFastCGIを使うでOK。よくわからず「php5isapi.dllがないよぉ」と嘆いてはみたが不要だった。
IISのハンドラマッピングで「php-cgi.exe」で動かします、とすればOK。
↑PHPインストーラ版だと勝手にやってくれていた。
■インストール先は故意に変更する
デフォルトインストール先が「C:\Program Files\PHP」になりますが、先人の知恵によるとあまりよくないっぽいのでパスに空白がないところにインストールしましょう。パスに空白はトラブルの元。
■動作確認で「phpinfo()」が動かない
私はこれでドハマリしました。
手順としては
1)http://localhost/にアクセスするとIISのようこその青い画面が出る
2)C:\Inetpub\wwwroot直下にphpinfo();だけを書いたPHPを置く。ファイル名「info.php」
3)http://localhost/info.php にアクセスする
(3)で真っ白になった。
●確認事項
・ドキュメントパスが誤ってないか?
「C:\Inetpub\wwwroot」直下にてきとーなhtmlを起きそこのURL叩いて表示できる? →できた。問題なさそう
・php.ini読めてるの?
コマンドプロンプトで「"C:\PHP\php-cgi.exe" -i」を叩くと、phpinfo()をブラウザで表示する時と同じHTMLを標準出力できるっぽい。
(exeのパスはPHPインストールパスに読み替えてください)
こちらで確認したところ「Loaded Configuration File」でちゃんとiniを読んでいることが確認できた。 →問題なさそう
・phpinfo();のファイル…このように書いてません?
<?
phpinfo();
?>
たしかになんだかプレーンテキストっぽかった。
なので、info.phpを
<?php
phpinfo();
?>
PHPinfoを表示させることができました。
環境が悪いのかIISが悪いのかVistaの
付け焼刃でいじると駄目ですね。根本的に理解する努力が必要ですね。
ともかくここまで…あとは本題のBOT動かすだけだ。前途多難orz







