WindowsでApache,PHP,MySQL

WindowsでApache,PHP,MySQLを動かす

定番中の定番ではありますがやはりウィンドウズでApache,PHP,MySQLを動かすことが できます。
ただ、Windowsはセキュリティーに不安があるように思います。巷を騒がせたり大きな被害の
報告のあるウィルスソフトはその多くがWindowsを狙ったものであることや、OS自体が外から
のぞけることを前提に作ってあるといわれているので、私個人的にはWindowsをサーバーとして
インターネット環境に出す気は毛頭ありません。
でも、社内で使われているパソコンのひとつをイントラネット(死語?)として活用する、あるいは
プロバイダのサーバーにアップする前の動作確認用として活用する前提であれば、かなり使えると
思います。

以下は、私の設定のメモですが設定の際の参考にして下さい。
参考にしたサイト(こちらの方が丁寧に説明があります)
All about Japan

  1. まずは、apacheをget
    http://www.apache.jp/ 日本アパッチユーザーグループから最新版、もしくは安定版をダウンロードします。
    ダウンロードの項目があるので、近くのミラーサイトを探します。
    プログラムソースから構築するのも可能ですが、windowsですからここは下のほうへ行ってバイナリデータの
    ダウンロードをします。
    ここで「apache_2.0.47-win32-x86-no_ssl.msi」もしくは「apache_1.3.28-win32-x86-no_src.msi」を
    ダウンロードします。apache_1.3系の方が安定していてトラブルも少ないようです。(私は新物好きでWebDAVが
    標準で実装という理由だけで2.0系をダウンロードしましたが、そのぶん大変だったと思います。
  2. ダブルクリックでインストール
    インストーラーが立ち上がれば後はそれに従っていけばインストール完了です。
    驚くほど簡単です。(インストーラー画面表示予定)
    ブラウザを立ち上げてhttp://localhost/で、テストページが表示されれば成功です。

  3. PHPのget
    http://www.php.net/downloads.phpでインストラーの無い版をダウンロードします。そう、zipパッケージの
    方ですね。exe版はmysqlサポートがないのでmysql使うためにはこちらです。

  4. zipファイルを解答します。
    解凍したフォルダ名を"PHP"としてCドライブに保存します。
    php4ts.dllをC:\WINNT内にコピーします。Windows 98/Meの場合はC:\WINDOWSです。
    php.ini-distをコピーし、php.iniに名前を変えます。それを、C:\WINNT内にコピーします。
    Windows 98/Meの場合はC:\WINDOWSです。

  5. php.iniの設定
    エディタでphp.iniを開き、421行目あたりのドキュメントルートを追加します。
    doc_root ="C:/Program Files/Apache Group/Apache2/htdocs"
    429行目あたりのモジュールエクステンションのディレクトリを追加します。
    extension_dir = "c:/php/extensions"

  6. dillファイルをコピー
    c:\php\dllsの全DLLをC:\WINNT\SYSTEM32内にコピーします。(14個ありました。)
    Windows 98/Meの場合はC:\WINDOWS\SYSTEM、Windows XPの場合はC:\WINDOWS\SYSTEM32です。

  7. apache のhttpd.confファイルにphpの設定を追加
    httpd.confファイルを開きます。
    173行目あたりに追加します。
    LoadModule php4_module c:/php/sapi/php4apache2.dll
    AddType application/x-httpd-php .php
    AddType application/x-httpd-php-source .phps
    <IfModule mod_php4.c>
    php_value include_path "c:/php"
    php_flag safe_mode on
    </IfModule>

  8. 動いているか確認
    「phpinfo.php」というファイルを作成します。
    <?
    phpinfo();
    ?>

    ブラウザからhttp://localhost/phpinfo.php
    で、表示が出ると思います。

  9. MySQLを入手
    MySQLを入手します。
    今回はmysql-4.0.14b-win.zipをダウンロードしました。
    解凍した後、インストーラーをダブルクリックします。
    インストーラーが立ち上がれば後はそれに従っていけばインストール完了です。
    これもここまでは簡単です。(インストーラー画面表示予定)

  10. mysql起動?
    C:\mysql\binのwinmysqladmin.exeをダブルクリックで起動します。
    ユーザー名パスワードを任意に入力します。右下に信号機マークが出てきたらOKです。
    コントロール管理ツールのサービスを起動します。

  11. MySqlの設定変更
    トランザクション対応バージョンである「mysqld-max-nt」を使用します。
    mysqld-nt が既に起動しているので、停止します。
    右下の信号機マークでstop the serviseを選びます。
    信号機マークが赤に変わります。

  12. mysqld-ntの削除
    また、信号機マークで今度はremove the servise を選びます。ダイヤログにもはいと答えます。

  13. mysqld-max-ntの追加
    信号機マークでshow me を選んでwinmysqladminの画面を開きます。
    my.iniSetupのタグを選んでmysqld-max-ntのラジオボタンを選んでSave Modificationのボタンを押します


  14. 設定の変更
    c:\winnt\my.iniを開き[mysqld]セクションに下記を追加します。
    default-character-set=ujis
    innodb_data_file_path = ibdata1:50M
    innodb_data_home_dir = c:\mysql\data\ibdata1
    set-variable = innodb_mirrored_log_groups=1
    #innodb_log_group_home_dir = c:\mysql\iblogs
    set-variable = innodb_log_files_in_group=3
    set-variable = innodb_log_file_size=10M
    set-variable = innodb_log_buffer_size=8M
    innodb_flush_log_at_trx_commit=1
    #innodb_log_arch_dir = c:\mysql\iblogs
    innodb_log_archive=0
    set-variable = innodb_buffer_pool_size=10M
    set-variable = innodb_additional_mem_pool_size=10M
    set-variable = innodb_file_io_threads=4
    set-variable = innodb_lock_wait_timeout=50

  15. フォルダの作成
    先の設定に書いたフォルダー c:\mysql\data\ibdata1を作成しておきます。

  16. サービスの追加
    コマンドプロンプトで
    C:\>\mysql\bin\mysqld-max-nt.exe --install
    でService successfully installed. となればサービス追加です。
    winmysqladminの画面でstart the serviseを選択しダイヤログにもはいと答えます。
    信号機が青に変わるともいます。

    変わらない場合は・・・
    C:\mysql\data内のログファイル、ib_logfile0~2,ib_arch_log_xxxx,とibdata1フォルダ内のibdata1を
    いったん削除して再起動してみてください。同じファイルが新たに作成されて起動すると思います。

  17. rootの設定
    コマンドプロンプトで、
    c:\mysql\bin\mysql -u root mysq
    とし、mysql>プロンプトがでてきたら
    DELETE FROM user WHERE Host='localhost' AND User='';
    QUIT
    C:\mysql\bin\mysqladmin -u root reload
    C:\mysql\bin\mysqladmin -u root password パスワード
    でroot設定が完了です。

  18. いよいよ起動です。
    C:\mysql\bin\mysql -u root -p
    Enter password: パスワード

    で、下のような画面が出てくれば成功です。
    Welcome to the MySQL monitor. Commands end with ; or \g.
    Your MySQL connection id is 1 to server version: 4.014-max
    Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
    mysql>

    お疲れ様でした。