30 April 2010
ページ ツール |
このチュートリアルでは、Adobe DreamweaverとMySQLデータベースサーバーを使用して、PHP Webアプリケーションを構築するための開発環境を、WindowsまたはMacintoshコンピューター上にセットアップする方法を説明します。
Dreamweaver向けのPHP開発環境のセットアップには、Webサーバー(Apache、IISなど)、PHP、MySQLデータベースが必要です。これら3つは別々にインストールすることもできますが、Windows用のXAMPP、Mac OS X用のMAMPといった統合ソリューションを使用したほうがはるかに簡単です。
注意:PHPはほとんどのデータベースシステムと組み合わせて使用できます。しかし、DreamweaverのPHPサーバービヘイビアがサポートするのはMySQLだけです。
このセットアップチュートリアルでは、次の作業の実行方法を説明します。
PHPページはWebサーバーを通して処理する必要があります。したがって、DreamweaverでPHPの開発を行うには、PHP対応のWebサーバーとMySQLデータベースへのアクセスが必要です。MySQLへのグラフィカルインターフェイスであるphpMyAdminもあると便利です。これら3つのコンポーネントはすべてオープンソースソフトウェアであり、開発、テスト、Webアプリケーションの展開用に無料で使用できます。
それぞれを個別にインストールすることもできますが、最も速くて簡単な方法は、統合ソリューションを使用することです。このチュートリアルではXAMPPを使用します。すでに動作しているPHP/MySQL環境がある場合、あるいはWampServer(http://www.wampserver.com/en/)などの別の統合インストーラーを使用する場合は、DreamweaverでのPHPサイトの定義にただちに進んでください。
Macユーザーの場合は、Mac OS XでのPHPのセットアップを参照してください。
XAMPPでインストールされるApache Webサーバーは、ポート80で要求をリッスンします。これは、Microsoftインターネットインフォメーションサービス(IIS)を含め、ほとんどのWebサーバーが使用するデフォルトのポートです。ポート80をリッスンできるWebサーバーは一度に1つだけです。
ASPまたはASP.NETでの開発のためにIISをコンピューターにインストールしてある場合は、XAMPPをインストールする前に必ずIIS Webサーバーを停止する必要があります。あるいは、Microsoft Webプラットフォームインストーラーを使用して、IISにPHPをインストールする方法もあります。これについては、「Dreamweaver向けのASP開発環境を構築」で説明しています。ただし、IISにPHPをインストールした場合は、MySQLとphpMyAdminは個別にインストールする必要があります。詳細については、Windows へのMySQLおよびphpMyAdminのインストール(IIS専用)を参照してください。
XAMPPのインストールと設定は簡単で、トラブルもほとんどありませんが、まれに問題が起きることもあります。問題が起きた場合、最も参考になる情報源は、XAMPPフォーラムです。
Windowsに管理者権限でログインしている必要があります。
オプションを設定し終わると、XAMPPの準備ができたというメッセージが表示されるはずです。その後に、簡単なメニューがある画面が表示されます(図1を参照)。1を入力してEnterを押し、XAMPPコントロールパネルを起動します。その後、xを入力してEnterを押し、コマンドプロンプトウィンドウを閉じます。
注意:Windowsセキュリティの警告が表示され、プログラムmysqlまたはapacheをブロックし続けるかどうかを尋ねられたら、どちらのプログラムに対しても「Unblock(ブロックを解除する)」ボタンを選択します。
エラーが発生した場合、次のことを確認してください。
ApacheまたはMySQLをWindowsサービスとして自動的に起動させるには、それぞれの隣にある「Svc」チェックボックスを選択します(FileZillaとMercuryは、FTPとメールのプログラムであり、DreamweaverでのPHPの開発には不要です。この記事ではこれらについては説明しません)。
データベースをセキュリティで保護するには、次の手順を実行します。
注意:コンピューターを使用する人が1人だけでも、MySQLデータベースはパスワードで保護することが推奨されます。
XAMPPをインストールしてデータベースをセキュリティで保護したら、PHPインストレーションをテストしてみましょう。
PHPが正常にインストールされていれば、PHPセットアップの詳細情報を示すページが表示されます(図5を参照)。
現段階ではこの画面には情報が多すぎるように見えるかもしれませんが、ここにはPHPセットアップに関する貴重な情報が含まれています。PHPの設定について確認する必要がある場合は、いつでもこの画面に戻ってください。
注意:同じ情報を表示するために、次のスクリプトを内容とするPHPファイルを作成して、ブラウザーに読み込む方法もありします。
<?php phpinfo(); ?>
以下の手順で、MySQLとphpMyAdminのセットアップを検証します。
ログインに成功すると、phpMyAdminのメイン画面が表示されます(図7を参照)。
これで、PHP、MySQL、phpMyAdminのインストールが完了し、使用準備ができました。
次の節では、IISと組み合わせて使用するために、MySQLとphpMyAdminを個別にインストールする方法を説明します。したがって、Dreamweaver CS5でのPHPサイトの定義に直接進むか、チュートリアルシリーズCreating your first dynamic site in Dreamweaverのパート1から来られた場合は、そちらに戻ってください。
IISでPHPを使用する場合、MySQLとphpMyAdminを個別にインストールする必要があります。
注意:以下の手順は、IISをWebサーバーとして使用する場合にのみ当てはまります。XAMPPおよびWampServerではMySQLとphpMyAdminはすでにインストールされています。
次のステップでは、MySQLのグラフィックフロントエンドであるphpMyAdminをインストールします。phpMyAdminはPHPベースなので、インストールは3段階のわかりやすい作業です。すなわち、ファイルをダウンロードし、ローカルテスト環境のWebサイトに解凍し、単純な設定ファイルを作成します。
次の画面では、phpMyAdminデータベースがセットアップされていないため、phpMyAdminの一部の機能が使用できないという警告が表示される可能性があります。これは重要ではありません。phpMyAdminの高度な機能を使用したい場合には、後でデータベースをセットアップすることもできます。
これでPHP開発環境が完成しました。次のページではMacでのPHPのセットアップ方法を説明するので、Dreamweaver CS5でのPHPサイトの定義に直接進んでください。
PHPページはWebサーバーを通して処理する必要があります。したがって、DreamweaverでPHPの開発を行うには、PHP対応のWebサーバーとMySQLデータベースへのアクセスが必要です。MySQLへのグラフィカルインターフェイスであるphpMyAdminもあると便利です。これら3つのコンポーネントはすべてオープンソースソフトウェアであり、開発、テスト、Webアプリケーションの展開用に使用できます。しかも、これらはすべて無料です。
Apache WebサーバーとPHPはMac OS Xにプリインストールされていますが、デフォルトでは有効になっていません。さらに、PHPのプリインストール版には多くの有用な機能が欠けており、MySQLは別にインストールして設定しなければなりません。ターミナルのコマンドラインに熟練しているユーザー以外は、統合ソリューションのMAMPをインストールする方がはるかに簡単です。
この節では、MAMPをMacにインストールする方法を説明します。これにより、Apache Webサーバー、MySQL、phpMyAdminが1回の操作でインストールされます。
すでにApache、MySQL、phpMyAdminが動作している場合は、MAMPをインストールする必要はありません。DreamweaverでのPHPサイトの定義にただちに進んでください。
注意:MAMP PROという有料アドオンのライセンスを購入することもできます。これにより、サイトの管理が簡単になります。ただし、DreamweaverでPHPページを開発するには無料版で十分なので、MAMP PROについてはここでは説明しません。
Windowsユーザーの場合は、WindowsでのPHPのセットアップを参照してください。
MAMPはApacheとPHPのプリインストール版を使用するのではなく、別のバージョンをハードディスク上の別の場所にインストールします。これにより、MAMPが不要になった場合は、単にMAMPフォルダーをごみ箱にドラッグするだけで、すべてを簡単にアンインストールできます。また、MAMPは、プリインストール版のApacheとの競合を避けるため、非標準のポート(8888)を使用して、Webページの要求をリッスンします。
PHPページをインターネット上に展開するのを容易にするために、Webサーバーの標準のポート(80)を使用するようにMAMPを設定しておいた方がよいでしょう。このための手順は後で説明しますが、初めにプリインストール版が動作していないことを確認する必要があります。
MySQLをコンピューターにインストールしたことがなければ、これで大丈夫です。
注意MAMPのインストールは非常に高速(数分程度)で、トラブルもほとんどありません。ただし、まれに問題が起きることもあります。問題が起きた場合、最も参考になる情報源は、MAMPフォーラムです。
MacにMAMPをインストールするには、次の手順を実行します。
この記事の目的では、MAMPの無料版をインストールすれば十分です。有料版はアドオンであり、後で高度な機能が必要になったときに追加できます。有料版の詳細については、MAMP PRO Webサイトを参照してください。
MAMPを動作検証して設定するには、次の手順を実行します。
番号が標準のポートに変わります。Apacheは80、MySQLは3306です。これにより、Dreamweaverでの開発が容易になります。
MAMPが停止し、両方のサーバーが再起動します。
注意:ここはトラブルが最も起きやすいところです。他のプログラムがポート80を使用している場合、Apacheは再起動しません。この場合、System Preferences(システム環境設定)の、「Internet & Network(インターネットとネットワーク)」の「Sharing(共有)」で「Web Sharing(Web共有)」が選択されていないことを確認します。もう1つの可能性は、Skypeがポート80を使用していることです。ポートは、SkypeのPreferences(設定)の「Advanced(詳細)」セクションで変更できます。着信ポートとして42815を指定してみてください。Apacheがポート80を使用できない原因がわからない場合は、MAMPの環境設定パネルを開き、「Reset MAMP ports(使用ポートを初期値に戻す)」ボタンをクリックします。
コロンと番号を付ける必要があるのは、非標準のポートを使用する場合だけです。
これで、PHP、MySQL、phpMyAdminのインストールが完了し、使用準備ができました。現段階ではこの画面には情報が多すぎるように見えるかもしれませんが、ここにはPHPセットアップに関する貴重な情報が含まれています。PHPの設定の詳細について確認する必要がある場合は、いつでもこの画面に戻ってください。
注意:同じ情報を表示するために、次のスクリプトを内容とするPHPファイルを作成して、ブラウザーに読み込む方法もありします。
<?php phpinfo(); ?>
これでコンピューターにPHPのテスト環境ができたので、DreamweaverでのPHPサイトの定義に進んで、開発を始めることができます。
PHPファイルはWebサーバーで処理する必要があるため、テストサーバーがどこにあるかをDreamweaverに伝えることが必要です。また、ファイルをテストする際に使用するURLもDreamweaverに伝える必要があります。以下の手順では、前の各節の説明に従って、ローカルテスト環境をコンピューター上に構築してあることを前提とします。
理論的には、PHPファイルはコンピューター上のどこに置いてもよく、ライブビューまたはブラウザーでのプレビューを実行したときに、Dreamweaverがファイルをテストサーバーにコピーします。ただし、この場合すべてのファイルの同一のコピーが2つ生じます。その代わりに、プロジェクトファイルをテストサーバーのドキュメントルート内部のフォルダーに置くのが普通です。このチュートリアルでもこの方法を採ります。
ドキュメントルートとは、サーバーがWebページを探すときに使用するトップレベルのフォルダーです。その場所は、PHPテスト環境をインストールした場所と方法によって異なります。
一般的なPHPセットアップでのデフォルトの場所を以下に示します。
ドキュメントルートのURLは http://localhost/です。
注意:MAMPのデフォルトポートを使用する場合、 http://localhost:8888/ をURLとして使用します。
作業フォルダーを指定するには、次の手順を実行します。
注意:フォルダー名にはスペースや特殊文字を入れないでください。一般的に、Webサイトのフォルダー名やファイル名にはスペースや特殊文字を入れないようにします。ほとんどのPHPサーバーで問題が生じるからです。
Dreamweaverでサイトを定義するのに必要な作業はここまでです。リモートサーバーやテストサーバーは、実際に使用するときまで定義する必要はありません。ただし、ここではすぐにサイトのテストを行うので、Site Setup(サイト定義)ダイアログボックスを開いておきます。
テストサーバーを指定するには、次の手順を実行します。
注意:MAMPのデフォルトポートを使用する場合、Web URLは http://localhost:8888/php_test/となります。
Dreamweaverでサイトを定義したので、すべてが動作するかどうかテストできます。
<body>タグの間に次のコードを入力します。<p>The time is now <?php echo date('H:i:s'); ?>.</p>
<?php ?>タグの間のコードは、現在時刻を表示します。
<p>タグ内部のテキストは通常通りに表示されますが、PHPコードは金色の盾に置き換えられます(図16を参照)。
「Address(アドレス)」テキストボックスの値が、ファイルの物理位置でなくWeb URLを示していることに注目してください。
ライブビューに時刻が表示されない場合は、次の点を確認してください。
PHPサイトは定義され、動作しています。次のステップでは、データベースに接続するための準備として、テストサイトにサンプルファイルを追加します。
このチュートリアルのサンプルファイルをダウンロードし、解凍して、サーバーのドキュメントルートにある php_test フォルダーに置きます。サンプルファイルがFiles(ファイル)パネルに表示されるはずです(図18を参照)。ファイルが表示されない場合は、Files(ファイル)パネル上部のRefresh(更新)アイコンをクリックしてみてください。
MySQLは単一のデータベースではなく、データベース管理システムです。個々のデータベースはMySQL内部に作成します。スーパーユーザー(root)は、すべてのデータベースに対してあらゆる操作を実行できます。したがって、権利のないユーザーが他人のデータにアクセスできないように、制限された特権を持つユーザーアカウントを作成する必要があります。
この節では、MySQLへのフロントエンドであるphpMyAdminを使用して、データベースの作成、サンプルデータの読み込み、MySQLユーザーアカウントの作成を行います。以下の手順では、WindowsにXAMPPがインストールされているか、MacにMAMPがインストールされているか、Webサーバー、PHP、MySQL、phpMyAdminによって独自のPHPテスト環境が作成されていることを前提とします。
この作業を実行するには、次の手順に従います。
Mac OS XでMAMPを使用している場合、http://localhost/MAMP/またはhttp:localhost:8888/MAMP/を使用し、phpMyAdminへのリンクをクリックします。
phpMyAdminのようこそ画面が表示されます(図19を参照)。
注意:画面の左側のメニューに表示されるデータベースのデフォルトのリストは、XAMPPとMAMPで多少異なりますが、この違いは重要ではありません。
注意:データベースとデータベースのカラム(フィールド)の名前を選択する際には、スペースやハイフンは使用しないようにします。英数字と下線文字だけを使用します(例、feedback_demo)。phpMyAdminではスペースとハイフンも入力できますが、これらは特殊な処理が必要であり、問題を起こす可能性があります。英文字は小文字だけを使用した方がよいでしょう。Windows版のMySQLでは、名前は自動的に小文字に変換され、大文字と小文字の区別なしに扱われるからです。ほとんどのPHPサイトはLinuxサーバー上に構築されており、大文字と小文字が区別されます。名前に大文字が含まれていると、WebアプリケーションをWindowsからLinuxサーバー上にアップロードしたときに、名前が使用できなくなってしまいます。
注意:「Collation(照合順序)」設定は、英語以外の言語を使用する場合を除いて、無視してかまいません。「Collation(照合順序)」は、レコードの並び順を決定します。英語の場合はデフォルト設定でうまく動作します。
rootスーパーユーザーは、データをすべて削除することも可能なので、phpMyAdmin内部の管理作業に限って使用するようにします。データを削除してしまうと、元に戻すことはできません。WindowsやMacのごみ箱に相当するものはないのです。したがって、次の作業としては、制限された特権を持つMySQLユーザーを作成します。以下の手順で、php_testデータベースだけにアクセスできるアカウントを作成します。
注意:phpMyAdminの機能の多くはコンテキストに依存します。「Privileges(特権)」タブはすべての画面にありますが、新規ユーザーアカウントを作成するには、ようこそ画面に戻って「Privileges(特権)」タブをクリックする必要があります。
次の画面で、新しいユーザーが追加されたことが確認されます。「Global privileges(グローバル特権)」セクションでは、すべてのデータベースに対する同じ特権をユーザーアカウントに与えます。このチュートリアルでは、このユーザーをphp_testデータベースだけに制限します。
注意:データベース名の下線文字の前には、バックスラッシュ(または\文字)が付いています。場合によっては、下線文字がMySQLのワイルドカード文字として使用されることがあるので、下線文字をその文字自体として扱うために、バックスラッシュ(または\文字)が付けられています。ただし、そのような場合は例外的です。通常は、データベース、テーブル、カラム名の下線文字の前にバックスラッシュ(または\文字)は付けません 。
これで、php_testデータベースにアクセスできるMySQLユーザーアカウントができました。次の節では、DreamweaverでMySQL接続を作成する方法を説明します。
サンプルファイルに含まれる comments.php は、php_testデータベースに対するクエリを実行し、結果を表示します。ページの「Customer Comments」セクションにある動的テキストオブジェクト(図22を参照)は、結果が表示される場所を示します。結果を表示するには、データベースへの接続を作成する必要があります。
MySQL Connection(MySQL接続)ダイアログボックスが開きます。
MacでMAMPのデフォルトポートを使用している場合は、localhost:8889を使用します。
注意:ここでは下線文字の前にバックスラッシュ(または\文字)を付ける必要はありません。前の節でphpMyAdminによってバックスラッシュ(または\文字)が挿入されていたのは、phpMyAdminが使用するクエリでワイルドカード文字が使用できるからです。
Dreamweaverがデータベースへの接続を試みます。接続が失敗した場合、次の作業を実行します。
これで、PHP開発環境とサイトがセットアップされ、PHP WebアプリケーションをDreamweaverで開発できるようになりました。
このチュートリアルでは、PHP開発環境のセットアップ、PHPサイトの定義、MySQLデータベースへの接続について説明しました。サイトとテストサーバーの定義と、MySQL接続の確立は、DreamweaverでPHP Webアプリケーションを開発するための基本的作業です。これで、PHPを使った動的WebサイトをDreamweaverで開発する準備が整いました。
DreamweaverでのPHP開発に関する他の記事やチュートリアルを見るには、Dreamweaver Developer CenterのWebアプリケーション開発ページを参照してください。