cakephpでブックマークアプリを作る (8)-2 ITかあさん

ITかあさん

cakephpでブックマークアプリを作る (8)-2


ドキュメントルートを変更する

仮にURLがこうだとして

http://example.com/posts

このURLでアクセスすると、今までローカル環境で作った内容が表示されますよね。

http://example.com/posts

まずはエラーの解決。
エラーの出ているファイルのパーミッションをそれぞれ666に変更してください。

Warning (2): fopen(/home/sp.websta.info/public_html/app/tmp/cache/models/cake_model_default_bookmark_list) [http://php.net/function.fopen]: failed to open stream: Permission denied [CORE/cake/libs/file.php, line 154]
Warning (2): fopen(/home/sp.websta.info/public_html/app/tmp/cache/models/cake_model_default_posts) [http://php.net/function.fopen]: failed to open stream: Permission denied [CORE/cake/libs/file.php, line 154]

次に/public_html/app/views/layouts の
layout.ctpに記述している

<link rel="stylesheet" href="/css/style.css" type="text/css" media="all" />
<!--[if IE 6]>
<link rel="stylesheet" href="/css/ie6.css" type="text/css" media="all" />
<![endif]-->
<script type="text/javascript" src="/js/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="/js/jquery-func.js"></script>

CSS、Javascriptのパスを変更してあげます。(URLの直下ですからね。ローカルと構造がやや異なります)

ローカルと同じに表示された!

これでローカルと同じに表示されました。

ドキュメントルートを変更する

ちなみに私は

というURLで公開したものの

上記URLを叩いたらhttp://sp.websta.info/postsが表示されるようにしたい!

そこで変更するのが
/public_html/app/config/routes.php
です。

通常Cakephpでは、URLの後に来るものは全てコントローラーとしての認識をしてしまいますから、
特別にURLを何か指定したい時はここを触ることになります。

Router::connect('/', array('controller' => 'pages', 'action' => 'display', 'home'));
↓↓↓↓↓↓↓
Router::connect('/', array('controller' => 'posts', 'action' => 'index', 'index'));

そして、上書きします

そして、URLだけでアクセスします

見事、URLだけでアクセスできるようになりました。
URLやファイルを特別何か指定したい場合はこのroutes.phpをちょこちょこ触ることが多いので覚えておくといいでしょう。