Macアプリからの送信でPush Notificationの動作確認は出来ていましたが、やっぱりちゃんとサーバーから送信するテストもしてみたいなという事で、PHPを使えるようにしてみました。
Mac OS X 10.5.6 Leopard には元からApacheなどサーバー用のソフトがインストールされているようです。
そのApacheの設定ファイルの中の1行をコメントアウトするだけでPHPが使えるようになります。
まずFinderを開きます。
Apacheのフォルダは見えないようになっているので「移動」→「フォルダへ移動」を選択します。

移動するフォルダを入力します。
etc/apache2/

そうするとapache2のフォルダへ移動できます。

このapache2のフォルダの中にある
httpd.confというファイルを修正します。
適当なテキストエディタで開きます。
以下の記述の部分を探します。
#LoadModule php5_module libexec/apache2/libphp5.so
行頭にある#を消してファイルを保存します。
これでPHPを使えるようになります。
あとはサーバーとしての機能を有効にします。
システム環境設定 → 共有

WEB共有にチェックを付けます。

これで完了です。
個人のWebサイトのリンクをクリックするとブラウザでページが表示されます。
このページのフォルダは「ユーザー」→「サイト」です。

ここへPHPのファイルを置いてブラウザからアクセスすると表示することが出来ます。
これでようやく準備が出来ていざPush Notificationのテストを行ないます。
PHPのソースコードはDeveloperForumで色々な人が書いているので、それを拝借してきました。
一筋縄ではいかなかったです。
拝借してきたコードで実行すると、証明書とプライベートキーが設定できないというようなエラーメッセージが出ます。
ドキュメントに書かれているようにサーバーに置く為の証明書とプライベートキーのインストール方法というのをやって、掲示板で書かれている手順でちゃんと作れているのにエラーが出ます。
掲示板でも同じようなエラーに悩まされている人が居て、その回答としてはPHPファイルと同じフォルダに置けば大丈夫。というような回答でした。
う〜ん、その通りにやってるはずなのに・・・
と、何度かポチポチと更新ボタンを押していたらエラーが出ずにOKの文字が!
ソースコード自体に間違いは無かったようで、実機の方へちゃんと送信されてきました。
その後、色々と考えてみたのですが、どうもソケットの準備が出来るまで待機しないとダメって事なのかな?という所まで考えはたどり着いたのですが、どうやって準備が完了したのかを確認すればいいのかが分からなくなり断念。
PHPのSSL通信についてとか調べれば何か分かるのかな〜と思いますが、一応送信成功という事で時間の空いてる時にまた調べてみようということにしました。
ソケット通信辺りで何か分かる事がある方が居ましたらコメントをいただけるとありがたいです。
posted by ラキシス at 19:58
|
Comment(0)
|
TrackBack(0)
|
iPhoneプログラミング
|

|