« PHPでPDF | メイン | Vine Linux 5.0 インストール »

ethna

URLハンドラーを実現する必要最小限手順

ethna アプリケーションを
http://www.domain/index.php?action_F=0&p=0123
 ↓
http://www.domain/exe/F/0123

http://www.domain/index.php?action_A=0&e=456
 ↓
http://www.domain/exe/A/456

http://www.domain/index.php?action_E=0&e=789
 ↓
http://www.domain/exe/E/789

で動作させる。
●mod_rewite
●PHP5限定?PEARのNet_URL_Mapper
には依存しない。
●シェルを使えないレンタルサーバーを考慮しシンボリックリンクを張らない。
これを実現する必要最小限の方法は次のとおり。

各ディレクトリの .htaccess ファイルの設定を有効とする為
apache1.3系なら
/etc/httpd/conf/httpd.conf
apache2系なら
/etc/apache2/conf/httpd.conf

AllowOverride All
とする。
エントリーポイントを配置するディレクトリの .htaccess ファイル

ethna のデフォルトのエントリーポイントファイル "index.php" を "exe" にリネームし$_SERVER['URL_HANDLER']を追加

APPID_UrlHandler.php

さらに、同じく APPID_UrlHandler.php で

APPID/etc/APPID-ini.php で

としてsmartyテンプレートで
{url action="F" p=$form.p}
{url action="A" e=$form.e}
{url action="E" e=$form.e}
とすれば、それぞれ
http://www.domain/exe/F/0123
http://www.domain/exe/A/456
http://www.domain/exe/E/789
に展開され、テンプレートへEthna_AppObjectをアサインし
{url action="F" p=$appObj->get('p')}
とすることも可能。
-------------------------
レンタルサーバーAbleNet

Vine Linux 4.2 (Lynch Bages)
PHP Version 4.4.8
Apache/1.3.41 (Unix) (Vine/Linux) PHP/4.4.8

Vine Linux 4.2 (Lynch Bages)
PHP Version 5.2.9
Apache/2.2.3 (Unix)

トラックバック

このエントリーのトラックバックURL:
http://www.remix.asia/cgi/mt/mt-tb.cgi/6684

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)