ユーザー エージェントをチェックし、必要に応じてモバイル バージョンを読み込む Web サイトがあります。www.mydomain.com/mobile を読み込みます。
ただし、このウェブサイト「stackoverflow」のように、サブドメインはありません。デスクトップ版とモバイル版の「stackoverflow.com」だけです。これはどのように行われますか?
ありがとう
www はサブドメインではなく、ホスト名です。ここで起こっているのは、DNS の動作です。www.stackoverflow.com
を調べてみましょう
www.stackoverflow.com. 3600 IN CNAME stackoverflow.com
これは、「www.stackoverflow.com
は のエイリアスです。IP アドレスを調べるためにstackoverflow.com
調べstackoverflow.com
てください」ということなので、今度は stackoverflow.com を調べます。
stackoverflow.com. 3600 IN A 64.34.119.12
そして、IPアドレスです。それが物語のパート1です。
SO が同じ URL を使用してモバイル バージョンとデスクトップ バージョンを提供するために使用する手法については、SO を駆動する StackExchange ソフトウェアはオープン ソースではないため、モバイル バージョンに関するブログ投稿のコメントから Jeff Atwood を引用することしかできません。
残念ながら、このアプローチは、モバイル クライアントに異なる HTML を実際に提供している私たちのようなサイトではまったく機能しません。
これは、目的のレンダリング (モバイルまたはデスクトップ) がセッションの一部であり、ページ コントローラーがデータベースに保存されている別のテンプレート セットを記事のコンテンツに適用するだけであると推測します。