Ethna > ドキュメント > 開発マニュアル > PATH_INFOを使ったRequest-URIからのパラメータの取得 > URLHandlerを使った設定例
URLHandlerを使った設定例
| 書いた人 | ichii386 | 2009-04-12 | 新規作成途中 |
概要
URLHandlerを使うと、たとえばアプリケーションのURLをシンプルにすることができます。(いまのところ) 設定が複雑なので、画像が表示されない、CSSが読み込まれない、などに悩まされるかもしれません。
ここでは、URLHandlerを使う上で、まとめて考えなければならない設定などの例を示します。
URLルーティング も参考にしてください。
設定の場所
- 設定ファイル (etc/XXX.ini.php) の 'url'
- 参考: システム固有の値
- エントリポイントの追加
- 参考: 複数のエントリポイントを作成する
- URLHandler自体の設定
- 参考: URLルーティング
- Apache (HTTPサーバ) の mod_rewrite の設定
- mod_rewrite自体の使い方は http://httpd.apache.org/docs/2.0/mod/mod_rewrite.html などを参考にしてください。
設定ファイルの 'url' パラメータ
アプリケーションのエントリポイント (デフォルトでは"index.php") までの、URL上のパス名を指定します。
このパラメータは、フォームヘルパの{url}プラグインで、URLHandlerがリンク先URLを自動生成するときなどに使われます。画面遷移したとたんにCSSが読み込まれなくなるときは、ここを見直すとよいかもしれません。
例1
以下のように、新規にプロジェクトを追加すると、
ethna add-project -b /var/www myapp
エントリポイントが /var/www/myapp/www/index.php 作られます。ここに
- http://example.jp/myapp/www/index.php
でアクセスする場合は、 /var/www/myapp/etc/myapp-ini.php に$config = array( // site 'url' => '/myapp/www/', ...と指定してください。
例2
自分のホームディレクトリで開発中のとき
- http://example.jp/~hoge/myapp/www/index.php
であれば// site 'url' => '/myapp/www/',とします。開発/本番環境で 'url' (を含む設定ファイル) をうまく切り替えてあげてください。
例3
ApacheのDirectoryIndexディレクティブにエントリポイントindex.phpが指定されていて(こうなっていることが多いはずです)、アプリケーションのwwwディレクトリがDocumentRootになっている場合、
- http://example.jp/
であれば// site 'url' => '/',とします。
エントリポイントの追加
index.php に加えて index_dev.php を追加するとします。
まだ途中です
Ethna-2.6.0(beta2)