XAMPP(エグザンプ)、行きま〜す
2007年08月27日23:42

PHPを始めるにあたって、いきなり挫折しそうなのは、もろもろのソフトのインストールです。
今回、新型モビルスーツのような名前のXAMPP(エグザンプ)を使って、ローカル環境、いわゆる自分のパソコンにPHPを開発して行くのに必要な、もろもろのソフトをインストールしてみました。



xamppのイメージ

PHPを使って行くにあたって、必要なソフトの構成をイメージ図にするとこんな感じになります。

Apacheがインストールされていることが大前提。
Apacheさまさまというところです。
活用して行くにあたっては、MySQLなどのデーターベースも必要です。
PHPを使うにはこういう感じのもろもろがどうしても必要ということみたいです。

レンタルサーバーなどでは、すでにこういう形で必要なソフトをインストールしてくれてるところも多いので、PHPファイルを作ってしかるべきところにアップロードすれば、PHPが動作してくれるようなのです。(ちなみにライブドアブログ・ProのFTPアップロードを利用してPHPファイルをライブドアブログにアップロードしても、サーバーに必要なソフトがインストールされてないので動作しません。)

問題は自分のパソコン(ローカル環境)でPHPファイルを作って、動作を確認したりしたい時です。プログラムを作りながら、あーでもないこーでもないと試行錯誤するためは、むしろ自分のパソコンでPHPファイルが動作しないことには話になりません。

自分のパソコンでPHPファイルを動作させるためには、もろもろのソフトをインストールしないといけないという、初心者にいきなり挫折しろとでも言わんばかりの作業が待ち受けています。

しかもApacheをインストールすると、ローカル環境の私のパソコンが、いわゆるレンタルサーバーみたいな状態になるらしく、インターネットにつないでいると、パソコンに置いているファイルが丸見えになったり、データベースにアクセスし放題状態になったりするという恐ろしいこともあるとのことです。

インターネットが100%安全とは思いませんが、できたら素人なりに対策を講じたいもの。
できればApacheは不要な時には停止しておきたいし、データベースもパスワードでブロックするとかセキュリティ的な手段が何かあればそれもやっておきたい。さらに、できれば、面倒なソフトのインストールをまとめて誰かやってくれないものか。しかも簡単に。

そういう初心者のわがままなツボを押さえたツールがXAMPP(エグザンプ)です。

XAMPP(エグザンプ)は以下のソフトをパソコンに一括でインストールしてくれます(2007年8月26日現在)。

  • Apache HTTPD 2.2.4
  • MySQL 5.0.45
  • PHP 5.2.3 + 4.4.7 + PEAR + Switch
  • MiniPerl 5.8.7
  • Openssl 0.9.8e
  • PHPMyAdmin 2.10.3
  • XAMPP Control Panel 2.5
  • Webalizer 2.01-10
  • Mercury Mail Transport System v4.01a
  • FileZilla FTP Server 0.9.23
  • SQLite 2.8.15
  • ADODB 4.94
  • Zend Optimizer 3.3.0
  • XAMPP Security
  • Ming 0.3beta1

とりあえずPHPのプログラムを開発するにあたって必要なソフトはこれでもかとインストールしてくれます。
上のリストの赤字で書いてあるものがとりあえず欲しい。
PHPはPHP5とPHP4の2つのバージョンがインストールされ、切り替えて使用することができるみたいです。
デフォルトではPHP5が起動します。

XAMPP(エグザンプ)の長所

  • PHP開発環境に必要なソフトを一括でインストールしてくれる。
  • XAMPPコントロールパネルでApacheやMySQLの作動開始、停止が簡単にできる。
  • PHP5とPHP4の切り替えができるらしい。
  • XAMPPセキュリティツールを使えば簡単にセキュリティの設定ができる。

XAMPP(エグザンプ)の短所

  • 結構使わなそうなソフトも丸ごとインストール。
  • セキュリティの設定をしなければウェブ丸裸状態。



<XAMPP(エグザンプ)、インストール行きま〜す>


ダウンロードサイト:XAMPP for Windows

XAMPP(エグザンプ)には、いろいろなバージョンがあり、中には必要なものだけをインストールしてくれそうなLite版とかもあるのですが、アップグレードがあんまり行われなかったり、便利なツールの中で使えないものがあったりと、初心者には厳しそうな内容だったので今回は素直にベーシックパッケージをインストールすることとしました。

xamppベーシックバージョン

当方、環境はいまだにWindowsXP、インターネットエクスプローラー6です。

「インストーラ」をクリックすると、どこかのサイトに飛ばされ、ファイルのダウンロードをしようとしていますという警告のバーがブラウザに出ましたが、これをクリックして、とりあえずデスクトップにダウンロード開始。

ダウンロードが完了すると、デスクトップに「xampp-win32-1.6.3a-installer.exe」のアイコンが出ます。

ここで・・・。
しばらくはインターネットにつなぐ必要は無いし、インターネットにつなげたまま何の設定もせずにApacheなどが立ち上がると、いきなりウェブ丸裸状態になってしまいますので、とりあえずLANケーブルを引っこ抜くなどして、インターネットの接続を切っておきましょう

インターネットの接続を切ったら、インストールしてみます。
「xampp-win32-1.6.3a-installer.exe」のアイコンをダブルクリック。
セキュリティの警告が出ますが、かまわず実行。
「Please select a language.(言語を選んでください)」と出ますので、日本語でOK。

xamppインストール


インストールフォルダはローカルディスク(C)の直下になっています。
WindowsVistaではC:\Programfilesのフォルダのパーミッションが限定されており、インストール先を変えたりすると、うまくインストールされないことがあるらしいので、そのまま「C:\xampp」にインストールすることとしました。XPですけども。

xamppインストールフォルダ


「デスクトップにXAMPPアイコンを作成」、「スタートメニューにApache Friends XAMPPフォルダを作成」に元々チェックがついてますが、これはそのまま残しました。
「サービス」はよくわからないのでとりあえずチェックはつけずに、「インストール」。
さくさくファイルがインストールされて行きます。

xamppインストール設定


インストールが終了すると、XAMPPを起動しますか?と聞いてきますので、「はい」をクリック。
XAMPPコントロールパネルが起動します。

ここで、まずApacheの「開始」をクリック。「サービス」のチェックは不要です。
Apacheの脇に「起動」の文字が出たら、今度はMySqlの「開始」をクリック。こちらも「サービス」のチェックは不要です。

xamppコントロールパネル

Apache、MySql、どちらも起動したところで、ブラウザを開きます。
インターネットに接続していないので、「ページを表示できません。」とお決まりのページが出てきます。
これをスルーして、ブラウザのアドレスバーに「http://127.0.0.1/security/」と入力します。

XAMPPのセキュリティページが開いて下記のようなセキュリティの状態が表示されます。
なぜかドイツ語になっていますので、とりあえず左サイドバーにある「English」をクリックして内容を見ます。

  1. XAMPPのページにはネットワーク経由で誰でもアクセス可能です。
  2. MySQLの管理者(root)にパスワードがありません。
  3. ネットワーク経由でphpMyAdminにアクセスし放題です。
  4. FTPサーバーは起動していないか、ファイアーウォールでブロックされています。
  5. PHPはセーフモードで起動していません。
  6. POP3サーバー(Mercury mail?)のテストユーザーは存在しないか、新しいパスワードを持っています。

xamppセキュリティ

ほとんど「UNSECURE」の、見るのも恐ろしいくらいノーガード戦法のセキュリティ状態です。
意味のわからないものも存在しますが、どうでもいいからできれば早くこの状態を脱したい。
このページの下の方に、セキュリティを設定するページへのリンクがあります。
http://localhost/security/xamppsecurity.php これをクリック。

xamppセキュリティ設定へのリンク


まずはMySQLのパスワードの設定です。
ここでは、MySQLの「root」というユーザーのパスワードを決めます。
決めたらパスワードを上の欄に入力します。下の欄に確認の再入力をします。
PhpMyAdminの確認をどうするか、というのはcookieにチェックをつけたままにしました。
一番下のチェックボックスは、チェックするとパスワードを書いたファイルがフォルダに作成されるので、セキュリティ上好ましくないようです。憶えておけば問題なさそうなので、チェックはしませんでした。
最後に「Password changing」をクリック。

XAMPP:MySQLパスワード設定


続いて、XAMPPのディレクトリにhtaccessでプロテクションをかける設定です。
ユーザー名とパスワードを入力します。
一番下のチェックボックスは、MySQLと同様、チェックはしませんでした。
最後に「Make safe the XAMPP directory」をクリックします。

XAMPP:htaccessの設定

SUCCESS: The XAMPP directory is protected now!
というメッセージが出ます。
以上で設定は完了です。

http://127.0.0.1/」にアクセスすると、パスワードの入力が求められますので、XAMPPディレクトリのユーザー名とパスワードを入力します。
http://127.0.0.1/xampp/splash.php」へリダイレクトされます。

XAMPPスプラッシュページ


日本語を選ぶと「http://127.0.0.1/xampp/index.php」のページが開きます。
おめでとうございます:
システム上にXAMPPが正しくインストールされました!

とのメッセージが表示されます。

左サイドバーにある「ステータス」 「マニュアル」「コンポーネント」「phpinfo()」でインストールの状況などがわかります。
ただ、 「セキュリティ」だけは「日本語」ではエラーになってしまいます
左サイドバーの「セキュリティ」をクリックする時は「English」を選択し、「Security」をクリックして下さい。

XAMPPインデックスページ

左サイドバーの「デモ」もなかなか面白いです。「CD コレクション」はMySQLのパスワードのためかエラーになりますが、「バイオリズム」「インスタントアート」「フラッシュアート」「電話帳」など、へーこんなこともできるんだと感心し、自分でプログラムを組んでこういうことができるようになったら良いなあ、と思いました。


さて、一通りインストール作業が終わったみたいなので、ブラウザを閉じます。
そして、XAMPPコントロールパネルで、ApacheとMySqlを停止します。
ふう、インストールようやく終了。

しかし・・・。
なぜかインターネットにつなごうとしたら、つながりません
あせって何回も接続しようとしますが、接続できない!なんだこれは!?

試行錯誤した末、XAMPPのコントロールパネルを終了し、タスクバーからXAMPPのアイコンが消えたところ、接続できるようになりました。
詳しいことはよくわかりませんが、どうもXAMPPのポートとインターネットのポートが緩衝していたようです。ポートが何者かとかはもちろんわかりませんが。
MySQLとApacheを停止して安心するのではなく、きっちりXAMPPコントロールパネルを終了することが環境によっては必要のようです。
この場合、インターネットにつないでいる時には確実にXAMPPが停止している必要があるので、むしろ安心かもしれません。

また、Skypeをお使いの方はXAMPPのインストールがうまくいかないことがあるらしく、これもポートが関係しているとか。
Skypeの接続の設定で、ポート80を使用する、というチェックをはずすとうまくいくことがあるらしいです。


以上でPHPのプログラムを開発できる状態がローカル環境にできました。
あとはPHPプログラムの勉強をするだけですが、これがこれでまた、難しそう(^^;


最後になりますが、XAMPPを教えていただきました、うかさま。
ありがとうございました。m(_ _)m
参考にさせていただいた記事:XAMPPをインストール


(2007/9/4)追記:日本語選択での「セキュリティ」のページのエラーに関して。

http://support.exxaxon.co.jp/index.php?topic=30.msg91




clip!PHP 

この記事へのコメント
あい
おぉー!
素人にはわかりやすい解説ありがとうございますー!

応援してますー!

モアロマ
モアロマ
2007年08月28日 10:20
5

afiliateさ〜ん♪afiliateさ〜ん♪
XAMPPインストール完了おめでとうございます。
なんとも凄いツールをインストールされたのですね。

>いきなりウェブ丸裸状態になってしまいますので
の辺りから、なんだかドキドキしてきちゃいました。

>PHPのプログラムを開発
あああ、素敵な響き。私も追いつきたいです。afiliateさ〜ん♪待って〜♪

おっと、大事なことを忘れるところでした。
先日は経由してくださってありがとうございました^^




afiliate
どおも〜あいさま。
私は今でも素人のつもりです(笑)。

素人 to 素人 のコミュニケーションを目指して、これからもがんばっていきたいと思いますが、さすがにPHPの内容になってくると難しいなあ。どういう風に進めていいのか、むしろ進めない方がいいのか、考え中です。

応援ありがとうございます〜。

afiliate
どおも〜モアロマさま♪。

XAMPPいいですよ〜。とりあえず、気軽にアンインストールできるところがさらにナイスです。この記事もインストール←→アンインストールを繰り返して書きました。おかげでXAMPPのインストール(とアンインストール)に関しては抵抗がなくなりました(笑)。

どれくらい丸裸状態なのかわからないのですが、オープンなMySQLデータベースを探してうろつきまわっているロボットもいるらしいので、用心するに越した事はなさそうです。これだけの設定でどれだけ丸裸が改善しているのかは未知数ですけども、何もしないより良いかと。

プログラムの開発・・・いいですね。できるともっといいと思いますが、難しい〜。

あ、良かったです♪。どういたしまして〜。

鉄鍋のべる
鉄鍋のべる
2007年08月28日 21:56
afiliateさん、こんばんわ。
更新される度にきています。べるです。

PHP、着実に勉強されていますね。すげー。
サーバーにPHP対応とかあっても、
ナンの事やらさっぱりわかっていなかったので、
ちょっと理屈が飲み込めた気がしています。

良くそんな状態でMovableTypeとかインストールした
ものだと思っております。

また勉強させてください('Д')ゞ

XAMPPって本当にモビルスーツみたいな名前ですね。

afiliate
鉄鍋のべるさま。どおも〜。
なんにしても、やってるうちに身についていく、というのはありますよね。
いまだにMovable Typeよくわかっていませんが。少しは使えるような気もしないでもない、くらいの怪しげなレベルにはなりました(笑)。

PHP対応、とか私も以前はびくびくしていました。PHPのサイトに行ってみたら英語だったし、何じゃこりゃ、私には無理、と思ってましたが、 なんだかやり始めたら少しずつ使えるようになるような気がしています。「わかっているわけではないが、使うことができる」、たぶん、それでいいんだと思います。使っているうちにわかってくることも多いですし。

参考になればうれしいです。

Milky Way
アムロ行きま〜す

と突っ込まずにいられませんでした^^;

XAMPPは、良くも悪くも、こんなに一杯インストールされるんですね。
使った事が無いですが、分かりやすい説明だと思います^^

PHPはフリー&商用OKだと特に、使用不可なところが多いと言う
プログラム習得以前の理由で始めてないんです^^;

でも始める機会があれば参考にさせて頂きたいと思います。

afiliate
どおも〜Milky Wayさま。

お待ちしておりました、そのツッコミ(笑)。

XAMPP、すんごくいろいろ入ってますね。知識が増えれば使えるソフトも増えると思いますが、現状で使う可能性があるのは半分ですw。

よく調べていませんが、PHPはブログではたぶん使えないと思います。レンタルサーバーが必須なのですが、逆にレンタルサーバーがあればブログでも使えることがわかりました。
http://afiliate.livedoor.biz/archives/50902274.html
↑このツールみたいに。

レンタルサーバーを借りるところから、PHPを始めるところまで、そのうち一度解説しようかなあと思っています。もし機会があれば、ご参考にされてください。

ruru
初めて登校させていただきます。
大変参考になりました。

やってみたいと思いつつ、難しそうでなかなか手が出なかったのですが、本屋さんをはしごして、何冊か購入してみました。

サンプルCD付きの本からフォームサンプルを使用中のレンタルサーバーへアップしてみました。

正常に機能しますので、少しがんばってみたいと思っていますが、
XAMPPを導入したほうが良いのか迷っています。

レンタルサーバーでPHPをはじめるという解説をぜひ掲載してください!

いろいろ探してみましたが、ネットでも本でもこんなに詳しく親切(危険なところは危険と)な解説は今のところ見つけることができません。

afiliate
はじめまして。ruruさま。コメントありがとうございます。

XAMPPは導入された方が良いですよ。ローカル環境(自分のパソコン)でPHPの動作確認が出来ますので。
今ならPHP5にして使った方が良いと思いますが、まだPHP5で使用する方法は私もわかっていませんです。近いうち勉強したいと思っています。

レンタルサーバーでのPHPの使用に関しては、お使いのサーバーがPHP4なのかPHP5をご確認いただいて、あとはそれにあわせたプログラムを作ってアップロードしていくだけと言えるかもしれません。最近PHPをいじっていないので、私はかなりPHPに疎くなっています(笑)

http://afiliate.livedoor.biz/archives/cat_50004883.html
↑こちらのカテゴリーの記事がひょっとしたらお役に立てるかもしれません。ご参考にされて下さいませ〜。