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

< Railsライクなフレームワーク「Cak... | メイン  |  こんな人がこのブログ... >

花吹雪の中身(Ruby
2008.04.03

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


ようやくRailsでの開発に携わり始めた今日この頃。
そろそろ別の記事を書きたい気分なんですが、
「①」を書いた以上、少なくとも②は書かないとカッコ悪いので
(「第一部」と銘打って打ち切りになる漫画みたいなのは嫌なので)、
今回もCakePHPについて書くことにします。

 

Web公開用ディレクトリの外出し

初期状態だと、以下のようなディレクトリ構成になってるはずです。

/cake
    /app
        /config
        /controllers
        /models
        /plugins
        /tmp
        /vendors
        /views
        /webroot
    /cake
    /vendors
    .htaccess
    index.php

このうち、/cake/app/webrootがWeb公開用ディレクトリになるのですが、
このディレクトリを別の場所に、別名で置きたいケースがあるかと思います。
(例えば、共有サーバでの権限の問題や、URLを特定したい場合など。)
ここではDocumentルート直下に「shopping」というディレクトリを置き、
URLを

http:// 設置URL / shopping / コントローラ / メソッド /

としたい場合の手順を書いていきます。

 

①/cake/app/webrootディレクトリをコピーして、Webルート直下に設置。

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


②webrootディレクトリを「shopping」にリネーム。

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


③/shopping/index.phpの以下の箇所を編集します。

if (!defined('ROOT')){
    define('ROOT', dirname(dirname(dirname(__FILE__))));
}

if (!defined('APP_DIR')){
    define ('APP_DIR', basename(dirname(dirname(__FILE__))));
}

if (!defined('CAKE_CORE_INCLUDE_PATH')){
    define('CAKE_CORE_INCLUDE_PATH', ROOT);
}

これを以下のように修正します。
例)Documentルートが/usr/local/apache2/htdocs/の場合の設定

if (!defined('ROOT')){
    define('ROOT', DS.'usr'.DS.'local'.DS.'apache2'.DS.'htdocs'.DS.'shopping');
}

if (!defined('APP_DIR')){
    define('APP_DIR', 'app');
}

if (!defined('CAKE_CORE_INCLUDE_PATH')){
    define('CAKE_CORE_INCLUDE_PATH', DS.'usr'.DS.'local'.DS.'apache2'.DS.'htdocs'.DS.'shopping');
}

なお、パスのデリミタはスラッシュではなく、 'DS' 定数を使用します。


④以下のアドレスで動作すればOKです。

http:// 設置URL / shopping / コントローラ / メソッド /

 

今回の設定は、デフォルトのURLで問題なければ特に必要のない作業ですが、
Documentルートを勝手に変更できない環境で、
特定のディレクトリ名をURLに入れたい場合などには有効でしょう。

できれば次回はRailsに関する記事を書きたいなあ・・・・

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

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

トラックバック URL

トラックバック一覧

Rubyについて
トラックバックをやってみるテスト [続きを読む] posted from こもの日記 2008.04.28 10:11

コメント一覧

流石です!私には全く理解できませんでした汗

written by 花吹雪 / 2008.04.28 10:06

この記事にコメントする

ニックネーム:
メールアドレス:
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
株式会社ケイビーエムジェイロゴ