Life is Adventure!

« 2013年09月 | メイン | 2013年11月 »

2013年10月 アーカイブ

2013年10月20日

Win32版 Apache2 と PHP5

WindowsローカルでPHPスクリプトをテストしようと思って新規にApacheとPHPをインストールした。XP/Vistaで使ったが、Windows7パソコンでは初めてである。Apache/phpともにバージョンがいくつもあってどの組合せが動くのかが分からなかった。最新版Apache2.4.6 (2013-07-22)、PHP5.5.5はWin32/Win64で動かなかった。

ドキュメントでは、「Windows Apache2で使う場合は、PHP 5.3 VC6 あるいは PHP 5.2 VC6 を選びます。」と書いてあったが、VC6がなかったので、PHP5.3.7VC9を選択し、Microsoft 2008 C++ Runtime (x86)もインストールしたが動かなかった。

動いたのは、Apache2.2.25 + PHP5.4.21 だった。C:/Apache/とC:/php/にインストールし、Apache/conf/httpd.confに下記3行を追加した。
LoadModule php5_module "C:/php/php5apache2_2.dll"
AddHandler application/x-httpd-php .php
PHPIniDir "C:/php"

最初にApache2.4.6を設定したので、php5apache2_4.dll になっていた。この場合、Apache Service MonitorでRestartするとfailedになる。Test Congurationで見ると、”Syntax error on line 494 ... Cannot load ...” になっている。php5apache2_2.dll にして正常動作した。

2013年10月23日

WAMPインストール

昔、LAMPという言葉がポピュラーだった。いまは当たり前だが、WAMPという言葉がある。WindowsでのApacheサーバ、MySQLデータベース、PHPスクリプトの開発・運用環境のことだ。それぞれの頭文字をとってWAMPだ。これらオープンソースのアプリケーションを一括してインストールできるパッケージがある。XAMPP, WampServer, EasyPHP, ZendServer, UniformServerなどだ。Apache/MySQL/PHPのほかにFilezilla, Wordpress, Drupalも含まれている場合もある。

VistaにLinux/ubuntu, XAMPPをインストールして使ったことがあるが、Vista不具合に四苦八苦して数ヶ月で使わなくなった。XAMPPそのものもまだ不安定なところがあり開発体制に問題もあったようだ。

先日、PHP学習とWebで動かす前のPHPスクリプトのテストを目的に、Apache + PHPをインストールした。いつものことながらConfig設定(httpd.conf, php.ini)に苦労するがなんとか動いている。今回はWAMPパッケージを使わず個別にインストールした。

Apache/PHP環境ができると、MySQLをセットアップしたくなる。個別にインストールする自信がなかったが何とかやってみた。いくつかのトラブルに遭遇したが、その都度ネットで解決策を探してフィックスできた。論理的・効率的にではなく、よく言えば想像力と類推力を駆使してだが、実際は行き当たりばったりの試行錯誤だ。それが私の流儀みたいになっている。失敗を繰り返していると、勘が働くようになることを願う。

MySQL日本語サイトがあるが、表ページだけが日本語で、その先は英語ドキュメントだった。ApacheやPHPのときと同じように、MySQLなるものがいろいろあって、どれをダウンロードするべきかが分かりにくかった。

MySQLをインストールした人のブログも読んだが、半年前の体験談なのでバージョンが古く、そこに書いてあるとおりにはいかない。とにかく最新版の MySQL Community Server 5.6 を選んだ。
  mysql-installer-community-5.6.14.0.msi 191.5MB

セットアップで、unknown '--no-beep' のエラーになったり、Access denied...のメッセージが表示されたり、いくつかのトラブルがあったが、ネットで調べてひとつひとつ対策を講じて動かすことができた。以下に、参考にしたサイトの一覧を記載しておく。基礎的なMySQLコマンドは勉強中だ。


2013年10月24日

phpMyAdminインストール

MySQLを使い出すと今度はphpMyAdminが欲しくなる。MSDOSコマンド、MySQLコマンドを使って遊ぶのもいいが、テーブルが増えデータも増えてくるとテキストだけの操作と表示には限界が出てくる。テーブルの構造、データ定義をチェックしたり、データを表示したり、追加・変更・削除するときに便利なのが、phpMyAdminだ。

MySQLを使っているアプリケーションが正常に動いている限りは、バックアップで構造とデータをエクスポートするときに使うくらいだ。アプリの振る舞いがおかしくなって画面が乱れたり、文字化けを起こしたり、過去記事が表示できなかったり、不審なコードが挿入されていたり、HTMLコードがフィルタリングされたり、いろんなことが起こる。そんなときに頼りになるのがphpMyAdminである。

ということでWindowsに入れて、Webサーバと同じ環境で開発(といってもカストマイズ)・テストできないかと思った。必須だからではなく、好奇心からだ。Windows7にインストールするのは初めてなのでメモしておく。


phpMyAdmin公式サイトからダウンロード(Linux/Windows共通)
最新版 4.0.8 (2013-10-06 zip 7.8MB en.tar.gz 4.1MB)
日本語ドキュメントは目次だけで、中身は英語だ。

 1. Download 4.0.8 ボタンをクリックすると自動的にダウンロードが開始される。
 2. ダウンロードしたzipファイル phpMyAdmin-4.0.8-all-languages.zip を解凍する。
 3. 解凍したフォルダー名をphpMyAdminに変更して、C:/Apache/htdocs/phpMyAdmin に保存
 4. ブラウザでhttp://localhost/phpmyadmin/を開くとつぎのエラーが表示

 

PHPで日本語を使うための設定をしていなかったためである。過去、Movable Type, Wordpress, Drupalなどで悩まされた経験があるので、mbstringが何かは分かった。ただ、具体的にどう設定するのか忘れたのでまた勉強した。

 1. php.iniで実行時の設定を行う。
 2. 拡張モジュールのパスを設定 extension_dir = "c:\php\ext"
 3. 拡張モジュール extention=php_mbstring.dll を有効にする。
 4. マルチバイト文字を日本語、コード系をUTF-8に設定
   mbstring.language = Japanese
   mbstring.internal_encoding = UTF-8
 5. 他の設定は以前に設定した値を踏襲した。

これで、mbstringのエラーは出なくなったが、今度はつぎのエラーが表示された。

 

MySQLへの接続に必要なモジュールがないということだ。mysql.dllとmysqli.dllの二つが必要だ。
 extension=php_mysql.dll
 extension=php_mysqli.dll

※php.iniの変更を反映するために、Apacheを再起動する。

ブラウザでhttp://localhost/phpmyadmin/を開くと、ログイン画面が表示される。phpMyAdminからMySQLへ接続するためなので、先日設定したデータベースのユーザ名・パスワードでログインする。ログイン後、下記のphpMyAdminの画面が表示されたときの達成感・・・これがあるから不具合を解決するエネルギーを振り絞る。