keshipi's blog

いつでも自分を振り返れるために書きます

CygwinでPHPとMySQLとApacheをいれてみた

今回はCygwinPHPの開発環境を作ってみたときの手順をまとめておきます。
だいぶハマったのでメモメモ。。。

ぶっちゃけXAMPPとかで入れれば一撃だと思うんですけど
Macのターミナルとか触っててCUIがすごく便利に感じたので、
WinでもCUIでやってみたいと思い挑戦してみました。



1.Cygwinをインストール
http://www.cygwin.com/から最新のモジュールをゲットしてインストール。
基本的にパッケージはデフォルトのモノのみ追加し、必要になったら追加していく感じにした。



2.apt-cygをインストール
apt-cygはcentOSのyumみたいなパッケージを管理してくれるものです。
インストールのコマンド

$ svn --force export http://apt-cyg.googlecode.com/svn/trunk/ /bin/
$ chmod +x /bin/apt-cyg

 


3.apt-cygのリポジトリ先を変更
取得先を国内のサイトに変更

apt-cyg -m ftp://ftp.iij.ad.jp/pub/cygwin/ update

 


4.PHPをインストール
PHPは3.指定した取得先にはないので別のリポジトリ先を指定する。

$ apt-cyg find php -m ftp://ftp.cygwinports.org/pub/cygwinports

この時に「setup.iniがみつからないよ><」みたいなエラーが出ました。
取得先のパス構成がやや変わったようで、以下のサイトを参考にパッチを当てた。
apt-cygのx86_64対応



5.MySQLをインストール
このコマンドでインストール

$ apt-cyg install mysqld

初期化コマンドを実行し、

$ mysql_install_db

MySQLを起動し、rootにパスワードを設定

SET PASSWORD FOR root@localhost=PASSWORD('ここにパスワードを指定');

MySQLの起動と停止コマンド

$ /usr/share/mysql/mysql.server start
$ /usr/share/mysql/mysql.server stop

 


6.Apacheをインストール
ApacheCygwinのデフォルトパッケージから追加した。(インストールに使用したsetup-x86_64.exeを使用)
cygserver-configを実行してCygserverをサービスとして登録する。
登録する際に、

$ cygserver-config

を実行して"yes"と押し進めていくと『Bad system call』というようなエラーに遭遇しました。
管理者権限での実行が必要なようなので管理者としてCygwinを立ち上げなおして再度実行!
(この時、ショートカットで立ち上げる場合にオプション設定されていることに気付いた。オプションなしで立ち上げるとつかえたコマンドが使えなくなってた。)
で、以下を実行。

$ net start cygserver

/etc/apache2 以下のフォルダにあるhttpd.conf内のServerNameをコメントインしてlocalhostに指定。
Apacheを起動

$ /usr/sbin/apachectl2 start(起動)
$ /usr/sbin/apachectl2 stop (停止)

ブラウザで確認したところ"It works!"がようやく表示されました。

とりあえずこれでPHPMySQLApacheのインストールができました。
つかれた~