読者です 読者をやめる 読者になる 読者になる

めも帖

「めも帖」代わりにダラダラと書いていったり、めもしたりしているだけです。

Mavericks(MacOS X 10.9)のPHPの開発環境

dev

Homebrew で、環境を構築はしたので、既に入っているApache とか、PHPを利用したいのです(PHPでの開発が主ではないので...)。あと、インストールが面倒というのもあり。

Apacheの確認

$ httpd -v
Server version: Apache/2.2.24 (Unix)
Server built:   Sep  2 2013 00:31:14

path が通っているのが意外だったりするんですが、こういうもの?(会社の開発環境とかだと、通さないことが多い)

ApacheMacBook 起動時に自動起動させる

環境設定はたまにしかしないので、だいたい忘れてしまいます。 あと、Mac自体の電源を、落とし忘れる...

$ sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist

Aapche 再起動

$ sudo apachectl restart

下記にアクセスして確認する

httpd.conf

/etc/apache2/httpd.conf  

DocumetRoot

$ cd /Library/WebServer/Documents

PHP

インストール済のPHPを使います(homebrewでインストールするのが面倒だった)

$php -v
PHP 5.4.17 (cli) (built: Sep  2 2013 09:22:40)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies

そういえば、今の最新っていくつなんだろう?と思って確認したら、5.5.6でした。 PHPのバージョンは、気づくとあがっている感じです。

PHPを使う

httpd.conf ファイルの編集をします。 コメントアウトを外します。

LoadModule php5_module libexec/apache2/libphp5.so 

PHPからMySQLに繋げる

苦難でした…。「2002 エラー」といのが出ます。なにそれ?って感じでした。 きちんと調べていくと、socketがない、ということらしい。

my.cnf を設定

homebrewからインストールしたMySQLは、my.cnf が見当たらない…と思っていたんです。 調べたら、下記のような感じで見つけました。

$ ls $(brew --prefix mysql)/support-files/my-*
/usr/local/opt/mysql/support-files/my-default.cnf
$cp /usr/local/opt/mysql/support-files/my-default.cnf /usr/local/var/mysql/my.cnf
$vi /usr/local/var/mysql/my.cnf

my.cnf

[mysqld]
socket = /var/mysql/mysql.sock

MySQLの設定を変更して再起動

$ cd /var
$ sudo mkdir mysql
$ sudo chmod 755 mysql
$ cd mysql
$ ln -s /tmp/mysql.sock mysql.sock