1. ホーム
  2. ハイパーリンク

[解決済み】モバイルブラウザの自動検出(user-agent経由?

2022-04-15 19:51:55

質問

ユーザーが携帯電話のウェブブラウザーから私のウェブサイトを閲覧しているかどうかを検出し、適切なバージョンのウェブサイトを自動表示するには、どうすればよいですか?

どのように解決するのですか?

はい、User-Agentヘッダーを読めば解決します。

には、いくつかの リスト アウト には、既知のモバイル・ユーザー・エージェントがあるので、ゼロから始める必要はありません。私は、既知のユーザーエージェントのデータベースを構築し、未知のユーザーエージェントが修正されたときにそれを保存し、手動でそれが何であるかを調べる必要があったときに行いました。この最後のことは、場合によってはやりすぎかもしれません。

Apache レベルで行う場合は、ユーザーエージェントをチェックする一連の書き換えルールを定期的に生成するスクリプトを作成します(新しいユーザーエージェントについては一度だけ、または月に一度など、あなたのケースに合った方法で)。

RewriteEngine On

RewriteCond %{HTTP_USER_AGENT} (OneMobileUserAgent|AnotherMobileUserAgent|...)
RewriteRule (.*) mobile/$1

へのリクエストを移動させることができます。 http://domain/index.html から http://domain/mobile/index.html

もし、スクリプトが定期的に htaccess ファイルを再作成するアプローチが好きでないなら、User Agent をチェックするモジュールを書くことができます(すでに作られているものは見つけられませんでしたが、特に適切なものがありました )、いくつかのサイトからユーザーエージェントを取得し、更新します。そうすれば、いくらでもアプローチを複雑にすることができますが、あなたの場合、前のアプローチで問題ないと思います。