時間が出来たのでMacBookAirに開発環境を設定しました。
今までは開発環境が無かったわけではなく、Xamppを使っていましたけどね。
Apache2のインストール
[sourcecode language=”plain”]$ sudo port install apache2[/sourcecode]
Apache2 の設定ファイルのオリジナルをコピーして保存しておいて、各種設定を行う。
[sourcecode language=”plain”]
$cd /opt/local/apache2/conf/
$sudo cp httpd.conf httpd.conf.org
[/sourcecode]
PHP5 のインストール
[sourcecode language=”plain”]$ sudo port install php5 +apache2 +mysql5 +pear[/sourcecode]
メッセージにしたがって php.ini を作成する。
[sourcecode language=”plain”]
$cd /opt/local/etc/php5/
$sudo cp php.ini-development php.ini
[/sourcecode]
php5用モジュールの追加
[sourcecode language=”plain”]
$cd /opt/local/apache2/modules/
$sudo /opt/local/apache2/bin/apxs -a -e -n "php5" libphp5.so
[/sourcecode]
PHP が利用できるように Apache2 の設定をする。
[sourcecode language=”plain”]
$ sudo vi /opt/local/apache2/conf/httpd.conf
<IfModule mime_module>
…
AddType application/x-httpd-php .php
…
</IfModule>
[/sourcecode]
MySQL5 のインストール
[sourcecode language=”plain”]
$ sudo port install mysql5-server
[/sourcecode]
MySQL初期化
[sourcecode language=”plain”]
$ sudo -u mysql mysql_install_db5
[/sourcecode]
PHP で MySQL を利用できるようにする。
php.iniにsocketを指定
[sourcecode language=”plain”]
$ sudo vi /opt/local/etc/php5/php.ini
mysql.default_socket = /opt/local/var/run/mysql5/mysqld.sock
mysqli.default_socket = /opt/local/var/run/mysql5/mysqld.sock
pdo_mysql.default_socket = /opt/local/var/run/mysql5/mysqld.sock
[/sourcecode]
root パスワードの設定をする。
[sourcecode language=”plain”]
$ /opt/local/lib/mysql5/bin/mysqladmin -u root password ‘新しいパスワード’
[/sourcecode]
PATHを通す
mysqlコマンドの場所を毎回指定するのは大変なのでPATHを通しておく。
ホームディレクトリの.bash_profileに下記を設定。
[sourcecode language=”plain”]
vi ~/.bash_profile
PATH=$PATH:/opt/local/lib/mysql5/bin
export PATH
[/sourcecode]
phpMyadminをインストール
[sourcecode language=”plain”]
$ sudo port install phpmyadmin
[/sourcecode]
開発用にhttp.confの設定を変更
macportsでインストールしたapacheのドキュメントルートは/opt/local/apache2/htdocs/
上記ディレクトリは扱いづらいのでドキュメントルートを/Users/ユーザー名/☓☓☓に変更し、webの開発もここで行うことにする。
(☓☓☓は任意の場所)
[sourcecode language=”plain”]
$ sudo vi /opt/local/apache2/conf/httpd.conf
#DocumentRoot "/opt/local/apache2/htdocs"
DocumentRoot "/Users/ユーザー名/☓☓☓"
#<Directory "/opt/local/apache2/htdocs">
<Directory "/Users/ユーザー名/☓☓☓">
[/sourcecode]
htaccessによる設定上書きを有効
[sourcecode language=”plain”]
$ sudo vi /opt/local/apache2/conf/httpd.conf
<Directory "/Users/ユーザー名/☓☓☓">
…
#AllowOverride None
AllowOverride All
…
</Directory>
[/sourcecode]
index.phpを有効に
[sourcecode language=”plain”]
$ sudo vi /opt/local/apache2/conf/httpd.conf
<IfModule dir_module>
#DirectoryIndex index.html
DirectoryIndex index.html index.php
</IfModule>
[/sourcecode]
aliasでphpmyadminを動作させる
[sourcecode language=”plain”]
$ sudo vi /opt/local/apache2/conf/httpd.conf
<IfModule alias_module>
…
Alias /phpmyadmin "/opt/local/www/phpmyadmin"
<Directory /opt/local/www/phpmyadmin>
Order allow,deny
Allow from all
</Directory>
…
ScriptAlias /cgi-bin/ "/opt/local/apache2/cgi-bin/"
…
</IfModule>
[/sourcecode]
MySqlのデータフォルダ変更
MySqlでデータを格納したいフォルダ任意の場所に変更
[sourcecode language=”plain”]
$ sudo vi /opt/local/share/mysql5/mysql/mysql.server
…
# overwritten by settings in the MySQL configuration files.
basedir=
datadir=任意のフォルダ指定
# Default value, in seconds, afterwhich the script should timeout waiting
…
[/sourcecode]
起動と停止
Apacheの起動と停止
[sourcecode language=”plain”]
$ sudo /opt/local/apache2/bin/apachectl start
[/sourcecode]
[sourcecode language=”plain”]
$ sudo /opt/local/apache2/bin/apachectl stop
[/sourcecode]
MySQLの起動と停止
[sourcecode language=”plain”]
$ sudo /opt/local/share/mysql5/mysql/mysql.server start
[/sourcecode]
[sourcecode language=”plain”]
$ sudo /opt/local/share/mysql5/mysql/mysql.server stop
[/sourcecode]