あなたの質問は、これと重複している可能性があるようです:
モバイルブラウザを自動検出(ユーザーエージェント経由?)
そうは言っても、そこで受け入れられた答えは次のことを示唆しています:
User-Agent ヘッダーを読むとうまくいきます。
既知のモバイル ユーザー エージェントのリストがいくつかあるので、ゼロから始める必要はありません。私がしなければならなかったときに私がしたことは、既知のユーザーエージェントのデータベースを構築し、改訂のために検出された未知のものを保存し、それらが何であるかを手動で把握することでした. この最後のことは、場合によってはやり過ぎかもしれません。
Apache レベルで実行したい場合は、次のように、ユーザー エージェントをチェックする一連の書き換えルールを定期的に生成するスクリプトを作成できます (または、新しいユーザー エージェントのことを忘れて、または月に 1 回だけ)。
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} (OneMobileUserAgent|AnotherMobileUserAgent|...)
RewriteRule (.*) mobile/$1
which would move, for example, requests to http://domain/index.html to http://domain/mobile/index.html
さらに、linked-StackOverflow-accepted 回答のリンクが壊れています。ただし、これに従うことができます(これは最新です):
http://www.enterpriseios.com/wiki/UserAgent
その他の参考資料: iPhone 4 ユーザー エージェントとは何ですか?