OS Xでハマる

Flash Pro CS3 Mac版を購入したのをきっかけに、再びマカーへの道を歩みだしました。MySQLphpMyAdminインスコ&設定で色々ハマってしまったので、覚え書きメモ。


MySQLのパスワード設定】

Windowsの時は、

set password for root=password('xxxxx');

で、できたんだけれど、Macの場合は何故かエラー。理由はよく分からないけれど、Google先生がrootの後にホスト名が必要だとか仰るので忠告に従う。解決。

set password for root@localhost=password('xxxxx');


phpMyAdminの設定】
なんだか分からないけどエラー。Google先生OS X 10.4の場合は、phpMyAdminのconfigの設定で、ホストをlocalhostではなく127.0.0.1にしなさいとか仰るので忠告に従う。解決。


【AMFPHPの設定】
1. 以前1.2.6を使用してみたのですが、今回は1.9 beta 2を使用することにしました。すると1.2.6で使用していたサービス(php)がことごとくエラー。Google先生曰く、1.9からは各サービスの概要を説明するためのmethod tableがなくなったとのこと*1。そこでコンストラクタ内のmethodTableを削除。解決。

2. 日本語を通信すると文字化けする。Google先生曰く、gateway.phpの設定を

$gateway->setCharsetHandler("utf8_decode", "ISO-8859-1", "ISO-8859-1");

から

$gateway->setCharsetHandler("none", "ISO-8859-1", "ISO-8859-1");

のように変更しなさいとのこと。解決。

3. AMFPHPのサービスが、ローカルのMySQLにつながらない。前述のphpMyAdminの設定と同様にDBの接続先をlocalhostから127.0.0.1に変更。解決*2

$mysql = mysql_connect("127.0.0.1", "root", "xxxxx");

[追記]
NetConnectionクラスのサブクラスから、gateway.phpを参照する部分があるのですが、これもローカル環境でテストする場合は、

rs=new RemotingService("http://127.0.0.1/amfphp/gateway.php");

のようにしないと動きません。


オイラがサーバのこととか全然分からないのがいけないのですが、設定だけでものすごく疲弊しました。でもオイラのMac愛はこれくらいの障害は屁とも思わんぞー!

*1:正確には、各サービスの詳細説明は、コンストラクタ内で定義していたmethodTableという関数ではなく、各サービスにコメントを付記し、そのコメントをサービスブラウザが表示するようになったのかな。

*2:と思ったら、MySQLから取得した日本語のデータが文字化けしてたよー。ムムー。