.htaccessの偉い人 Part3

このエントリーをはてなブックマークに追加
254nobodyさん
質問なんですが、
.htaccessを使って、ホスト別にDirectry Indexを変えることはできますか?
例えば、
PC用は./にアクセスすると、index.htmlを読み込んで、
携帯用は./にアクセスすると、i.htmlを読み込むような。

cgiでできるのは解るんですが、.htaccessでは無理ですかね?
cgi負荷を避けたいもんで。
255nobodyさん:02/08/25 20:20 ID:???
mod_rewriteなら出来るだろうが、標準だと使えないのよね。
BrowserMatchとSetEnvIf使って出来ない?
256nobodyさん:02/08/25 20:24 ID:???
Cで組め。
それか軽めのindexを作れ。

■サイト入口■

○PC用
○i-mode用


とかな。
257nobodyさん:02/08/25 20:32 ID:???
>>255
ありがとうございます。
けど、そこまで.htaccessの知識がないんです。
色々調べてみましたが、まだ詳しく理解できないです。
素直にcgiでやった方がいいですね…。すいません。
258nobodyさん:02/08/25 20:36 ID:???
ま、mod_rewrite を使うのが常道なんだろうけど。

=== .htaccess
DirectoryIndex index.shtml
AddHandler server-parsed shtml
BrowserMatch "DoCoMo" client=docomo
BrowserMatch "UP\.Browser" client=au
BrowserMatch "J-PHONE" client=jphone
BrowserMatch "PDXGW" client=ddip
BrowserMatch "Windows CE" client=pda
BrowserMatch "sharp pda browser" client=pda
...

=== index.shtml
<!--#if expr="\"$client\" = \"docomo\"" -->
<!--#include file="i/index.html" -->
<!--#elif expr="\"$client\" = \"au\"" -->
<!--#include file="e/index.html" -->
<!--#elif expr="\"$client\" = \"jphone\"" -->
<!--#include file="j/index.html" -->
<!--#elif expr="\"$client\" = \"ddip\"" -->
<!--#include file="h/index.html" -->
<!--#elif expr="\"$client\" = \"pda\"" -->
<!--#include file="pda/index.html" -->
<!--#else -->
<!--#include file="index.html" -->
<!--#endif -->
259nobodyさん:02/08/25 20:43 ID:???
>>258
どうもありがとうございます。
cgiが若干わかる程度で、mod_rewriteもCもサッパリなんで。
感謝します。