人気コンテンツ今日: |
MacでCakePHPの開発環境を整えるsasaki 金曜, 2008-02-08 16:21
MacでCakePHPの開発環境を整えたときのメモ。CakePHPガイドブック
■CakePHPのインストールインストールというよりは、ファイルを置いておくという感じかな。 ダウンロードは、CakePHPのサイトから。
解凍したら、自分のサイトディレクトリに置く。 自分のホームディレクトリ/サイト/cake/
cake_1.1.19.6305のように長いディレクトリ名は cake のように短くしておく。好みもあるけど、単純に分かりやすいから。
■Apacheを起動してアクセスするApacheを起動する。 システム環境設定 > 共有 > パーソナルWeb共有
■PHPを有効にする。/etc/httpd/httpd.conf の以下2行のコメントを外して有効にする。 (MacOS 10.5では、/etc/apache2/httpd.conf を編集する) LoadModule php4_module libexec/httpd/libphp4.so Apacheを停止してから、起動する。
とりあえず、Safariでアクセスして、「CakePHP Rapid Development」が表示されればOK。 http://localhost/~自分のログイン名/cake/index.php
■PHPの設定ファイルを用意する/etc/php.iniを用意する。 $ sudo cp /etc/php.ini.default /etc/php.ini
■Apacheを再度設定するmod_rewriteが使えるようになっていることを確認する。 (MacOS 10.5では、/etc/apache2/httpd.conf を編集する) /etc/httpd/httpd.conf LoadModule rewrite_module libexec/httpd/mod_rewrite.so
.htaccessを使えるようにする。 /etc/httpd/users を /etc/httpd/users.BAK として「ディレクトリ単位」でバックアップしておく。 /etc/httpd/users 内にある設定ファイルは「全て」apacheが読み込んでしまうため、注意する。 /etc/httpd/users/自分のログイン名.conf <Directory "/Users/FinalCut/Sites/"> (Indexesはディレクトリ内を一覧できるので便利だけど、本番環境では利用しないことが多い) (MultiViewsも日本語・英語の両方でコンテンツを提供する *.html.ja や *.html.en を使わなければ外しておく) (MacOS 10.5では、/etc/apache2/users/自分のログイン名.conf を編集する。httpd.conf -> extra/httpd-userdir.conf -> users/*.conf という遠回りなIncludeが指定してある。)
上記の設定で、http://localhost/cake/をブラウザでアクセスするとエラーになるはず。 それでよし。以下の設定を行う。
■3つの.htaccessファイルにRewriteBaseを設定する自分のホームディレクトリ/Sites/cake/.htaccess を編集して、RewriteBaseの行を加える <IfModule mod_rewrite.c>
自分のホームディレクトリ/Sites/cake/app/.htaccess を編集して、RewriteBaseの行を加える。 <IfModule mod_rewrite.c>
自分のホームディレクトリ/Sites/cake/app/webroot/.htaccess を編集して、RewriteBaseの行を加える。 <IfModule mod_rewrite.c>
▼これは、間違い。 RewriteBase /~自分のホームディレクトリ名/Sites/cake/ ▼これは、正しい。 RewriteBase /~自分のホームディレクトリ/cake/
なぜなら、http://localhost/~自分のホームディレクトリ/cake/ をリライトの基本にしますよ。という指示だから。
■MySQLをインストールMySQL5.0をダウンロードした。バージョンは今回とりあえずどうでもいい。 http://dev.mysql.com/downloads/mysql/5.0.html#macosx-dmg
dmgをダブルクリックでマウントして、mysql-5.0...pkgをインストールする。 MySQLStartupitem.pkgは、自動起動したい人用なので必要なし。 MySQL.prefPaneは、システム環境設定でMySQLを起動停止できるので、ダブルクリックしてインストールしておいた。
■MySQLを起動するシステム環境設定でMySQLを起動できるようにしたのでそれを利用してもよいと思う。 ただ、起動しなかった場合にエラーメッセージが表示されないので原因が分からないので手動で起動する。 rootになって手動で起動する。 # /usr/local/mysql/bin/mysqld_safe --user=mysql &
起動スクリプトを使って起動停止する場合、 # /usr/local/mysql/support-files/mysql.server start
■MySQLでデータベースとテーブルを作成しておくデータベースを作成する。 mysql> create database xxxdb;
テーブルを作成する。 create table customers (
■MySQLへの接続情報をCakePHPに教えるデータベースへの接続設定ファイル 自分のホームディレクトリ/Sites/cake/app/config/database.php database.php.defaultをコピーしてdatabase.phpを作成する。 class DATABASE_CONFIG
ブラウザでhttp://localhost/~自分のログイン名/cake/index.php にアクセスしてWarningが出なければOK。 MySQLが作成するSocket: /tmp/mysql.sock PHPが探すSocketの場所: /var/mysql/mysql.sock なので、 この違いのためWarningが出るはず。
解決策は2つ。
今回は、PHPの設定を変更して、/tmp/mysql.sockを探すようにした。
■PHPの設定を変更してソケットファイルを探す場所を変更する場合
さきほど作った/etc/php.iniを編集してソケットの場所を教えてあげる。 ; Default socket name for local MySQL connects. If empty, uses the built-in Apacheを再起動する。
面倒だったら、Macを再起動するのが簡単。
■MySQLがソケットファイルを作成する場所を変更する場合(参考情報)/etc/my.cnfを修正すればよい。/usr/local/mysql/support-files/my-medium.cnfをコピーして/etc/my.cnfを作成する。 $ sudo cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf サーバの設定 [mysqld] クライアントの設定 [client] MySQLを再起動する。
印刷用 | カウント(150)
|
PHPamazon広告英語お勧め教材! 英語の学校でも使っているのですが、1つのストーリーを3分で読めて、内容も面白く、もっと早く出会いたかった本です。 Apple好きで英語も勉強したいならこの一冊! 天気情報ブログパーツ |