ここから本文です

Cake PHP 初心者です。 Webrootにアクセスすると、index.phpでURLの振り分けが行...

oki********さん

2011/4/314:32:42

Cake PHP 初心者です。
Webrootにアクセスすると、index.phpでURLの振り分けが行われます。
index.phpにアクセスしたとき、任意のcontrollerに振り分けてページを表示したいと考えています。
よろしくお願いいたします

運用環境
WindowsXp Xampp CakePHP1.3.6 Apacheはmodrewriteはon。
ディレクトリー構成
---cake/app
|
--html(webroot)(http://local-test/)
|
--index.php

ブラウザーでhttp://local-testとアクセスすると、index.phpにアクセスします。
この index.php はCakeの標準の画面が表示されます。

通常のwebサイトなどでは、http://local-testのようにアクセスすると、そのサイトのTopページが
表示されます。
このCakeの設定ページをサイトのTopページの表示ができるように変更したいと考えています。
TopページもCakeの機能を使用します。

どなたかご存じであれば教えてください。よろしくお願いいたします。

<補足>
現在考えていることを整理します。

1.
webroot直下のindex.phpを編集して、URLは http://local-test/ のままサイトのTopページを
表示する。

2.
ブラウザーで http://local-test/ もしくは http://local-test/index.php にアクセスしたら、
URLを http://local-test/next_top/のようにURLを書き換えて再度アクセスする。

3.
ブラウザーで http://local-test/ もしくは http://local-test/index.php のようにアクセス
してきたら、 http://local-test/index.phpにアクセスする前にApacheの設定で、URLを
http://local-test/next_top/のように変更してからアクセスする。

以上です。

重ねてお願いいたします。

補足mzg_hrm様
早速のご回答ありがとうございました。また丁寧なご回答ありがとうございました。
ご呈示いただいた手法も検討させていただきましたが、
今回はroutes.phpを変更することでも解決しましたので,、ベストアンサーにはそちらを
選ばせていただきました。本当は皆さんにお礼をしたいのですが。
またよろしくお願いいたします。

この質問は、活躍中のチエリアン・専門家に回答をリクエストしました。

閲覧数:
7,582
回答数:
2
お礼:
500枚

違反報告

ベストアンサーに選ばれた回答

hot********さん

リクエストマッチ

2011/4/510:43:36

config/routes.phpをいじるだけで解決しますよ。

Router::connect('/', array('controller' => 'home', 'action' => 'top'));

こう書いた場合、ドキュメントルートはhomeコントローラーのtopアクションがトップページになります。

質問した人からのコメント

2011/4/7 10:27:16

hot_otan様
早速のご回答ありがとうございました。
ご呈示いただいた手法で解決いたしました。
またよろしくお願いいたします。

ベストアンサー以外の回答

1〜1件/1件中

mzg********さん

2011/4/319:25:24

cakeでは、もともと、webrootにある .htaccess で実行url 書き換えを行ってますので、これに追加する方が楽です。よって、提示の3になるかな。
具体的には、apache の DocumentRoot指定が "cake/app/webroot" となっているなら、そのディレクトリーにある .htaccess に追加します。

RewriteRule ^$ index.php?url=top [QSA,L]
RewriteRule ^index.php$ index.php?url=top [QSA,L]

上記行を、以下の行の直前に追加する
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]

あとは、
cake/app/controllers/top_controller.php
というファイルを作って、ここに作るクラス内function index() にトップページ用の記述を他のページと同様に書きます。

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる