さきほど突然ソフトウエア・アップデートが動きだしたので、Mac OS X 10.0.5かぁ!と思ったのですが、WebObjects 5 Update 1でした。これもソフトウエア・アップデートでアップデートできるのですね。
ところで、今日はPHPをMac OS X Serverで動かす方法を紹介しました。「やっぱりWebObjectsでしょ〜」と突き上げを、あちらこちらから食らいそうな気もしますが(笑)。LinuxやFreeBSDでサーバをやっている連中にとってPHPはキラーアプリケーションです。実は、このMDOnlineのシステムもPHPを使っています。Webサイトで御覧になっている記事や、あるいはメールの配信とか書き込みを行う部分はPHPで作っています。それに、郵便番号検索サイトをやっていますが、それもPHPなんです。私にとってはPHPはいちばんなじみのあるアプリケーションサーバ(と言っていいかどうか〜笑)なんです。だから、動かすノウハウとかはあったので、気軽に記事にできそうというのもありました。まあ、PHPは万能とは言いませんし、いわば手続き言語でゴリゴリ書くタイプではありますが、手軽さという点ではやっぱり一番手に来るシステムだと思います。あ、もちろん、WebObjectsについてもいろいろこれから紹介しますから、御安心ください。
(新居雅行 msyk@mdonline.jp)
mac.comのメール配信になんらかのトラブルがあった模様だ。すべてのmac.comのアカウントに影響があるわけではないようだが、ユーザによってはメール送信や受信ができないという状況になった。日本時間の2001年7月10日の午後あたりにはなんらかの機能障害が発生していた模様である。また、日本時間で2001年7月11日の未明あたりでは、Appleのサポートサイトにはメールサービスはメンテナンス中であることが表示されていた。11日の午前中にメンテナンスが終わったことが記載されている。また、11日の未明に、iToolsやiCardへのアクセスを行うと、「申し訳ありません。現在はiToolsは御利用できません」とのメッセージも見られたが、11日の午前中にはiToolsなどの利用は復旧している模様だ。
「mac.comはよく落ちている」と御指摘されるかもしれないが、今回は時間的に長く、影響が大きいように感じる。実際、筆者のアドレスも10日にメール配信が滞っているようだ。メーリングリスト等で利用しているが、リストからのメールが断続的になっている。現在、11日の正午であるが、10日の午後そして11日未明以降、メーリングリストからの配信が受け付けられていない(10日夜から11日未明のリストからのメールは来ている)。メールについては転送時にエラーがあると、何時間か経過して再送信を行うのが一般的であるため、サーバが正常に戻ってもすぐにはメールの配信が再開されるわけではないのであるが、この調子だと配信されないメールが出てくるのではないかと心配になってしまう。メーリングリストの内容はWebで参照できる場合も多いが、私信が届いていないという結果になることはなんとしても避けてもらいたいところだ。
フリーメールサービスは変な言い方かもしれないが、あまり真面目に使われていないこともあるように思う。一時的に使うとか、名前を隠して使うとかいうときの利用もそこそこ多いだろう。そのこともあってか、フリーメールのアドレスをメインのアドレスとして使っている人はそれほど多くもないという印象がある。もちろん、気にしないでフリーのアドレスをメインに使っている人も決して少なくはない。だが、mac.comについては、Macユーザの間では認知されたメールアドレスであり、一般的なフリーメールとは違ったある種のステータスもある。その意味では、たとえフリーであっても運用責任は重大になってしまっているだろう。Mac OS Xでは送信サーバとしても使う設定が自動的になされるなど、トラフィックは明白に増大しているだろうが、安定したメール利用ができるような体制を望みたいところだ。
iToolsはmac.comは接続プロバイダではないため、すべてのユーザはAppleのホームページにはアクセスができる。今回は簡単な状況説明はあったが、何ができなくなっているのかなど状況を的確に伝えることは可能なはずだ。また、確実に配信できるようになった段階で、ユーザにメールで知らせることも可能だろう(言語の問題もあるのだけど…)。今回のような状況は、たまたま筆者がメーリングリストにmac.comのアドレスで参加していて気付いたということもあり、また、いくつかのメーリングリストやAppleのDiscussion Boardで状況が報告されたこともあって明確になった。もしかすると、そうした動きがなければあるいは察知していない場合、メールサーバのトラブルがあったことすら分からなかったかもしれない。こうした状況が発生するのは、やはり機械が相手だけに仕方ないことは多くのユーザは理解しているだろう。むしろ、対応面での課題がまた残っていると言えそうだ。
関連リンク:Apple Care: Service & Support
カテゴリ:インターネット全般, サービス
PHPはオープンソースの世界では有名なソフトウエアだ。HTMLの中にスクリプトプログラムを埋め込むことを可能にする。Webサーバでスクリプトを含んだHTMLファイルを取り出した時、単にクライアントにファイルの内容を投げるのではなく、スクリプトプログラムをサーバ側で実行して、その処理結果をWebクライアントに戻すのである。つまり、サーバー側で稼動するプログラムをHTMLと統合的に記述ができるという利点がある。プログラム部分でデータベースアクセスを行えば、データベースから取り出したデータを、Webクライアントに対して送信するということができる。プログラムの出力結果をHTMLとして整えることで、Webブラウザ側は特殊なプラグインやあるいはOS環境と必要としないのである。PHPはそうした仕組みを提供するソフトウエアなのだ。
PHPはApacheのプロジェクトとして活動するなど、Webでのスクリプトの中心的な存在となっている。PerlでのCGIは有名だが、PerlはHTMLファイルとは別にプログラムを作成する。PHPだと、HTMLにスクリプトをまぜることができるので、独特の作りやすさがある。また。PHPの言語はPerlにけっこう近い感じのするプログラムだ。もちろん、変数の利用など言語機能としては一通りのものが揃っている。特にデータベース利用ができるということで、PostgreSQLやMySQLといったオープンソースのデータベースエンジンといっしょに使ったWebサイトは一般的に見られるようになっている。
このPHPのVer.4がMac OS X Serverには最初から組み込まれている。Mac OS X ServerにはこうしたWebアプリケーションを作成する素材はふんだんに組み込まれているが、そのうちの1つがPHPだ。他には、WebObjectsのDeployment環境もあるし、Tomcatもある。これらの比較というのも興味あるところだが、別の機会に譲るとして、今回は、PHP4をMac OS X Serverで稼動させるところのごくごく基本的なところを確認したので、その方法をお伝えしよう。
まず、Mac OS X Serverでは、Apacheが最初から稼動している。実は、ApacheとPHPを1からインストールするのは難しいわけではないが、きちんとパラメータを指定してのコンフィギュアが必要となるので「./Configure;make;make install」しか知らない管理者にとっては動かないと慌てることになるだろう。だけど、Mac OS X Serverではとりあえず標準状態では、ApacheはPHPを使えるようにコンパイルされている。そのまま使うのならインストール作業は不要だ。PHP自体はApacheのモジュールとして供給されるが、もちろん、コンパイルされたモジュールが最初から含まれているのである。後は、PHPが稼動するように設定を行えばいいのだが、標準状態ではPHPは使えるようになっていない。Server Adminでそういう設定も見当たらないので、Apacheの設定ファイルをいじることになる。設定ファイルは、/etc/httpdにある。ここにあるhttpd.confがApacheの設定ファイルである。
ちなみに、Apacheの設定ファイル自体は、手作業でいじってもどうやら問題はないみたいである(もしかして支障はあるかもしれないが今のところはそれは見つかっていない)。というのは、実際の設定は、httpd.confだけでなくhttpd_macosxserver.confというファイルも含めて反映される。Server Adminによって変更されるのはどうやらhttpd_macosxserver.confの側だけのようなので、おそらく、httpd.confは自由に変更できるものと思われる。
さて、ルートになってhttpd.confを編集するのであるが、以下の3つのポイントにある設定行の頭の「#」をすべて削除すればよい。#は設定を無効にする記号だが、これら3つの設定を有効にすればいい。編集後、もちろん保存しておく。
<ポイント1>
#LoadModule php4_module /usr/libexec/httpd/libphp4.so
<ポイント2>
#AddModule mod_php4.c
<ポイント3>
#AddType application/x-httpd-php .php
#AddType application/x-httpd-php-source .phps
そして、実験をしてみよう。以下のような簡単なスクリプトを含んだファイルを、Webサーバで公開しているディレクトリに保存する。以下の内容で、ファイル名をたとえば「test.php」とすればよい。ちなみに、Apacheは拡張子が.phpのファイルだと、その中に含まれたスクリプトプログラムを実行するようになっている(それが、前記のAddTypeの設定である)。
カテゴリ:Mac OS X Server, サーバー製品, Browsing Mac OS X
Mac OS X 10.0でのデバッグについての情報がTechnical Q&Aに掲載された。/etc/hostconfigファイルに、「CRASHREPORTER=-YES-」という行を記述しておけば、OSがクラッシュしたときに、アクティブなスレッドの状態など、そのときの状況をコンソールに書き出すことができる。アプリケーションのデバッグや、バグレポートに有効に活用できるとしている。
関連リンク:QA1057:Activating CrashReporter in OS X
カテゴリ:Technical Q&A, 開発情報, Mac OS X
Mac OS X上でQuickTime for Javaの機能を使って開発を行っているが、コンパイル時にエラーが出るという点についての解答が、Technical Q&Aに掲載された。QuickTime for Javaのライブラリファイルは、Mac OS Xに最初から組み込まれているが、クラスパスで参照されるようになっていないため、エラーが出る。したがって、QuickTime for Javaのライブラリを、プロジェクトに追加する必要がある。プロジェクトに追加するライブラリファイルは「/System/Library/Frameworks/JavaVM.framework/Home/lib/ext/QTJava.zip」である。なお、アプリケーションにこのライブラリは含める必要はない。アプリケーションの実行時には、JavaVMフレームワークの/lib/extのディレクトリはクラスパスに自動的に組み入れられている。
関連リンク:QA1058:Using the QuickTime for Java libraries on OS X
カテゴリ:Technical Q&A, QuickTime, Java
Technical Q&Aに、Swingのアプリケーションで既定のルック&フィールに関する情報が掲載されている。Mac OS XではAquaに対応したルック&フィールを持っている。Swingではルック&フィールをダイナミックに変更できるが、そのルック&フィールの指定方法はいろいろある。どのルック&フィールを使用するかといった情報は、swing.propertiesというファイルに記載されている(/System/Library/Frameworks/JavaVM.framework/Home/libというディレクトリに存在)。コマンドラインからアプリケーション起動する時に、「-Dswing.defaultlaf=
関連リンク:QA1059:Setting the default look-and-feel for Swing applications
カテゴリ:Technical Q&A, ユーザインタフェース, Java
Peninsula社は、FileMaker Proでフィールドのデータを暗号化するプラグイン「Encrypt for FileMaker」をリリースした。BlowFishを用いた448ビットの暗号化を行う。また、暗号化したデータを16進形式への変換機能も用意しており、暗号化したデータをメールとして送るといった用途にも使えるとしている。MacintoshあるいはWindows版のFileMaker Pro 5.5に対応し、Mac OS Xにも対応している。SHAやMD5による署名の機能もある。価格は$13だが、サイトライセンスや開発者向けのライセンスも用意されている。
関連リンク:Peninsula
カテゴリ:暗合化, データベース
Technical Q&Aに、Mac OS XのCarbonアプリケーションでCarbon Timerを使ってOpenGLのアニメーションを非同期に描画しているとき、メニューに重なって描画が行われてしまう点についての対処が掲載されている。基本的には、メニューを選択している間はOpenGLのアニメーションをストップするとして対処するのであるが、Carbon Eventを使う場合と、WaitNextEventを使う場合で、それぞれでのプログラミングのポイントが記載されている。なお、Mac OS Xではこうしたテクニックは使う必要はないとも記載されている。
関連リンク:QA1042:Menus & Hardware Accelerated OpenGL under Mac OS 9 Carbon
カテゴリ:Technical Q&A, グラフィックス, Carbon/CF, Mac OS 9
GeForceグラフィックスカードのファームウエアのアップデータと、Mac OS 9.1で利用する機能拡張のアップデートが行われた。公開されたのは英語版だけである。日本語版のユーザは、日本語版アップデータをとりあえず待つ必要があるあるだろう。アップデートより、パフォーマンスの向上や互換性の向上が行われると説明されている。
関連リンク:GeForce Graphics Card Update 2.1.1: Document and Software
カテゴリ:OS関連ソフトウエア, 周辺機器