我有一个网站,用于检查用户代理并在需要时加载移动版本。它加载www.mydomain.com/mobile。
但是,就像这个网站“stackoverflow”一样,没有子域名:它只是桌面和移动版本的“stackoverflow.com”。这是怎么做到的?
由于
答案 0 :(得分:1)
www不是子域名,它是主机名。这里发生的事情就是DNS在行动中 让我们来查看www.stackoverflow.com
www.stackoverflow.com. 3600 IN CNAME stackoverflow.com
这说:“www.stackoverflow.com
是stackoverflow.com
的别名,查找stackoverflow.com
以了解IP地址”,现在我们查找stackoverflow.com
stackoverflow.com. 3600 IN A 64.34.119.12
就是IP地址。这是故事的第一部分。
关于SO用于使用相同URL提供移动和桌面版本的技术,因为为SO提供支持的StackExchange软件不是开源的,我只能引用来自a comment on a blog post regarding the mobile version的Jeff Atwood
不幸的是,这种方法对我们这样的网站根本不起作用 这实际上是为移动客户端提供不同的HTML。
这使我推测所需的呈现(移动或桌面)是会话的一部分,而页面控制器只是将另一组模板应用于存储在数据库中的文章内容。