ランプの中身(Ruby on Railsのシステム開発)
ランプの中身(Ruby on Railsのシステム開発)では、株式会社ケイビーエムジェイのRuby on Railsエンジニアが蓄積したノウハウを公開しています。Ruby on Railに関する技術解説や実践的なノウハウなど、開発現場の技術に則したコンテンツを随時追加していきます。 初心者の方でもわかりやすい技術解説を心がけています。リクエスト、ご質問も受け付けいますので、ご気軽にコメントを記述して下さい。

< RadiantCMSのインストール(2)... | メイン | Railsライクなフレームワーク「Cak... >

花吹雪の中身(Ruby
2008.02.27

Railsライクなフレームワーク「CakePHP」①


今回は、RailsライクなPHPのフレームワーク「CakePHP」を紹介しよう。
仮にあなたが「Rails」で検索をかけてこの記事にたどり着いたとして、
「PHPなんかどうでもいいんだよ」
と、この記事を読まずに他の人の記事に行ってしまったとしても、
あるいは「CakePHP」で検索をかけたのに、
「Railsの方が良さそうじゃん」
と、やはりこの記事を読まずに他の記事に行ってしまったとしても、
私は別に構わない。
その時点で、既に私の役目は果たされているのだから・・・・

 

必要な環境


・PHP4.3.2以上、あるいはPHP5以上が動作するサーバ
・データベース(必要であれば)

また、URLをCakePHPの規約に合う形で作るため、mod_rewriteが使える環境が望ましいです。
(mod_rewriteが使えなくてもCakePHPは使えます)

 

インストール


http://www.cakephp.org/

上記のサイトからCakePHPをダウンロードし、Apacheのドキュメントルートに設置します。

設置したディレクトリの構造は以下のようになってるはず。

/cake
    /app
    /cake
    /vendors
    .htaccess
    index.php

とりあえず、以下のURLで表示を確認してみよう。
http:// 設置URL /cake /

 

URLとmod_rewiteの設定

mod_rewriteの設定は、

/cake /.htaccess
/cake /app /.htaccess
/cake /app /webroot /.htaccess

の3つの.htaccessファイルで行われています。

そして、mod_rewriteを利用できる環境では、以下のようなURLが用いられます。

http://設置URL / コントローラ / メソッド / パラメータ1 / パラメータ2 /...

例えば、

http://doruby.kbmj.com / members / regist / 3

というURLの場合、

members_controller.php の中のregist() メソッドに引数「3」を入れて実行する

という意味になり、実際に呼び出されるファイルは、

コントローラ: /cake /app /controllers /members_controller.php
テンプレート: /cake /app /views /regist.thtml

となります。

詳しいディレクトリの説明はまた次回に回しますが、CakePHPではURLから必要なファイルを判断し、
対応するコントローラやテンプレートを呼び出して処理を行う、という事を覚えておいてください。

 

mod_rewriteが使えない場合

mod_rewriteが利用できない場合は、以下の3つの作業が必要になります。

①core.phpの修正
/cake /app /config /core.php
の以下のコメントを外してください。

<?php
/**
 * If you do not have mod rewrite on your system
 * or if you prefer to use CakePHP pretty urls.
 * uncomment the line below.
 * Note: If you do have mod rewrite but prefer the
 * CakePHP pretty urls, you also have to remove the
 * .htaccess files
 * release/.htaccess
 * release/app/.htaccess
 * release/app/webroot/.htaccess
 */
// define ('BASE_URL', env('SCRIPT_NAME'));  ← ここのコメントを外す

②.htaccessファイルの削除
上述した3つの.htaccessファイル

/cake /.htaccess
/cake /app /.htaccess
/cake /app /webroot /.htaccess

を削除してください。

③URLの変更
CakePHPで用いるURLが以下のように変わります。

http://設置URL /index.php /コントローラ名 /アクション名/

コメント (0)  |トラックバック (0)

ブックマークに追加する Subscribe with livedoor Reader あとで読む

トラックバック URL

この記事にコメントする

ニックネーム:
メールアドレス:
URL:


KBMJのWebソリューション
Ruby on Rails Summer Festival 2008開催決定!!

TOPICS

2008/06/25
ZD Net Builder」の連載記事です。第四回は「Rubyでどう書く?:重複したRSSをまとめる」が掲載されました。

2008/05/30
ZD Net Builder」の連載記事です。第三回は「Rubyでどう書く?:Rubyで特定URLの画像パス一覧を表示する」が掲載されました。

2008/05/07
ZD Net Builder」に連載を始めました。第二回は「Rubyでどう書く?:RubyでPDF履歴書を作成する」が掲載されました。

2008/04/24
アットマーク・アイティ」に『 Rubyを使ってPaSoRi経由でSuicaの乗車履歴を取得し、GoogleMapsやGoogleEarthで表示する』が掲載されました。

全体のRoR最新ブログ一覧

プロフィール

  • 花吹雪
  • 初めまして。花吹雪と申します。
    KBMJでRailsの開発をやっております・・・・と
    言いたいところですが、実はやってません。

    個人的にはPHPでの開発が長く、
    これからRubyあるいはRailsで開発していこうという状況ですので、
    どちらかというと初心者的な立場からの投稿になるかと思います。

    ピンチになったら他のメンバーに助けてもらうとして、
    とりあえずよろしくお願いいたします。

LINKS

ブログの購読

RSS

timelog
株式会社ケイビーエムジェイロゴ