WindowsローカルにWordPress

P9254916s

面倒くさそうでやる気もなかった、「WindowsXPのローカル環境にWordpressをインストール」ってやつを、突然思い立ってやってみました。
実際のところ、面倒でした 🙁

事前準備

Windows版PHPのインストールマニュアル

まず、wordpressのために必要な環境を、そろえることから始まりました。
上記のサイトに従って、下記をインストールしていきます。

  • Apache HTTP Server 2.2.13のインストール
  • PHP 5.2.11のインストール
  • MySQL 5.1.39のインストール

Apache をインストール途中でインストーラーに聞かれる Server Name 当たりは、ローカルで動作チェックするぐらいなら、適当でいいみたいです。

PHPまでは順調でしたが、
ご多分に漏れず、MySQLの「mysql server instance configuration wizard」で、どツボ。
再インストール時に serviceの開始がエラーになる報告は、ググると大量に出てきますが、初回から、wizardがハングアップ 😥

MySQLインスト・エラー地獄からの脱出

これが解決の決め手とは断定できないけど、成功直前にやったこと。
(ネットの情報をあれこれ試して、こんがらがってしまいましたが)

MySQL 再インストール時のエラー「Could not start the service MySQL」

上記を参考に、一度、MySQLを(なるべく)完全にアンインストールする。

  • コマンドプロンプトからサービスの削除(”C:Program Files\MySQL\MySQL Server5.1\bin\”mysqld -remove [サービス名])
  • プログラムの追加と削除で、MySQLをアンインストール。
  • C:Program Files\MySQL\フォルダを削除。(my.ini が残ってるので)
  • レジストリで、MySQL関連を(なるべく)削除。
    (たぶん、rootのパスワードなんかが残ってるんじゃないかな。これは、ウィルスバスター2010のレジストリクリーン機能を使えば消えるかなと思ったのですが、処理後、レジストリエディタで mysql と検索してみるとけっこう残ってました。 5,6カ所ぐらいか、手動で削除して、面倒くさくなって途中でやめました。)
  • C:Document and Settings/AllUsers/Application Data/MySQL を削除。
  • C:WINDOWS\Prefetch\の中のMYSQLDから始まるファイルを全部削除。
    (意味あるのかな?)
  • ブラウザのキャッシュやクッキーを削除。
    (Google Chrome を使ってるんだけど、意味あるのかな?)

これでPCを再起動。
(実際にはこの段階で、深夜になり、つづきは明日にと、寝ちゃいました)

再起動後、
個人的な状況としては、ウィルスバスター2010が入ってるで、Windowsファイアーウォールは無効にしているのに、勝手に有効になってることがある。
ので一応両方とも、ポート3306を許可する設定をしておき、さらにインスト前にはWindowsファイアーウォールが無効になっていることを確認。

これでインストールを開始。
ちなみにWizerdの選択は、こちらを参考にすすめました。

MySQL インストール (Windows の場合)

Configure the MySQL Server now のみチェック。次へ。

Detailed Configuration をチェック。
PHPproだと、standardをオススメしているけど、データベースを別なドライブに置きたかったから。
次へ。

Developer Machine を選択。次へ。

Multifunctional Databaseを選択。次へ。

InnoDB Tablespace Settings を 目的のDドライブに。次へ。
(でも、これは見当違いだったみたい)

Decision Support (DSS)/OLAP を選択。次へ。

Enable TCP/IP Networking
Enable Strict Mode の両方をチェック。ポートは3306のまま。次へ。

Best Support for Multilingualism で文字コードをUTF-8に。次へ。

Install As Windows Serviceにチェック
service nameは MySQL501を選択(前回インスト失敗してサービスが残ってなければなんでもいいのかも)
Include Bin Directory in Windows PATHにチェック。
(再起動しないとパス通しは有効にならないみたい)
次へ。

rootのパスワードを設定。

以上。
これで、「なぜか」インストール成功。

Apacheのドキュメントパスの設定変更

HTMLファイルなどを入れていくドキュメントルートが、デフォルトだと C:/Program Files/ ディレクトリの階層の奥になっています。
で、それはイヤなので、データ専用のDドライブに、local_docみたいなディレクトリを作って、そちらに変更する事に。

設定ファイル \Apache2.2\conf\httpd.conf で、二カ所、
DocumentRoot “C:/Program Files/Apache Software Foundation/Apache2.2/htdocs”
‹Directory “C:/Program Files/Apache Software Foundation/Apache2.2/htdocs”›
を、D:/local_doc に書き換えて、サービスを再起動したら、OKでした。
これでいいのか? 調べてないけど。

wordpressのインストール

WordPressをローカル(Windows)にいれる
では、ようやくWordPressの5分間インストールにすすめて
1.WordPressをゲットして解凍。

あたりからを、もろに参考にさせて頂き、進めました。
コマンドライン上のMySQLの操作は、下記を読むと、やっていることが良く判りました。

MySQL初心者入門講座

「お使いのサーバーの PHP では MySQL 拡張を利用できないようです。」

に、同じように引っかかりました。解説通りにクリア。
php.iniの下記の部分をコメントアウトし有効化すれば良いだけ。
;extension=php_mysql.dll
;extension=php_mysqli.dll
書き換えたら一応、Apach eを再起動。

wordpressのインストールが成功して、はじめてログインしてみると…

ログインするとIndexかでてきてindex.phpみてくれなくて

に、また同じくひっかかる。ファイルの一覧が表示されてしまうのです。 これも説明通りにしたら直りました。
Apache の httpd.conf に下記を追加すれば良いとのこと。
DirectoryIndex index.html index.php
書き換えたら Apache の再起動。

また、バッチファイルも説明通りに作りました。
これは便利。

MySQLのデータベースのパスを変更

で、MySQLのデータベースは、Wizardで設定を変更したパスにそれらしいファイルが存在しているのですが、
デフォルトのC:/Documents and Settings/All Users/Application Data/MySQL/MySQL Server 5.1/Data/にもできてました。
wordpress用に作ったデータベースも、このデフォルトの方にディレクトリが掘られています。

そこで、MySQLのサービスを停止して、
データベースを置きたいドライブにディレクトリを作成し、
上記のデフォルトのフォルダから、中身を全部コピー。

C:\Program Files\MySQL\MySQL Server 5.1\my.ini の
datadir=”C:/Documents and Settings/All Users/Application Data/MySQL/MySQL Server 5.1/Data/”
を、変更してサービスを開始すると、OKでした。
いいのか?これで?

wordpress インストール完了後

ダッシュボードで Woedpress開発ブログとフォーラムだけが、何故か文字化け。原因不明。楽しみに見てるだけにちょっと残念です。
それ以外に問題ないのでとりあえず放置。

パーマリンクが作動せず

ブログの管理画面や、index.php は問題なかったのですが、個別のエントリーをクリックすると、パーマリンクが作動していないようで、表示エラーに。

WordPress ローカル環境でパーマリンクを有効にするには

に従って、
#LoadModule rewrite_module modules/mod_rewrite.so
をコメントアウト。
これだけではダメだったで、

ローカル環境で動かす (2)

に従って、
2カ所の、AllowOverride None を ALLに。
この両方が揃ってOKになりました。

やれやれ。今日はここまで。
この後、公開しているWebSiteのデータをローカルに復元し、
上手くいけば、ローカル上で、テーマやWidget、Pluginの作成、動作チェックしていく予定です。

この次は、モアベターよ。

[post=”1532″] につづく。

  • このエントリーをはてなブックマークに追加

コメント

コメントをどうぞ

メールアドレスが公開されることはありません。