如何开发一个移动版网站,而不改变它';的域名


How to develop a mobile version website, without changing it's domain name?

我想开发我原来网站的移动版(还包括iphone、ipad和andriod)。但我不想创建另一个子域,比如www.m.mydomain.com,我可以分别动态更改移动版本和现有版本的文档根目录吗?我还注意到,当我打开脸书形式的iphone或任何Android手机时,它会打开它的原始域名,比如http://www.facebook.com/bt当我从诺基亚或三星等其他手机上打开它时http://m.facebook.com/,这两个有什么区别?

当涉及到iPhone和Android开发时,网站几乎不需要调整,因为它们的网页浏览功能非常好。

对于其他网络浏览用户体验不太令人满意的设备,网站会动态地将其切换到另一个不那么"激烈"的网站版本。

至于m.domain.com功能,这只是domain.com网站的一个子域名。显然,它代表了主站点的移动版本,基本上会去掉flash和javascript之类的东西——对于基本的移动浏览器来说太多的东西。

浏览器的动态切换是通过代码完成的。有一些方法可以检测浏览器刚刚请求您的网站。根据返回的信息,您可以重定向到特定的脚本,从那时起,这些脚本将处理用户请求

例如,您可以使用这个标准参数来检查访问您网站的浏览器:

$_SERVER['HTTP_USER_AGENT']

希望能有所帮助。

您可以在Apache级别或PHP级别上通过User-Agent属性来区分它。尽管这并不能保证,因为UA可能会被欺骗。(但是有多少移动用户会通过UA欺骗来假装自己不是移动用户?)

您可以使用一些解决方案:

创建一个特定的移动网站,将其放在文件夹/子域中,并将任何使用移动设备的用户重定向到该网站,例如:mydomain.com/m/或m.mydomain.com

重定向示例:
http://detectmobilebrowsers.mobi/
http://mobiforge.com/developing/story/lightweight-device-detection-php

您可以使用响应式web设计技术,一些框架已经可以用于此
http://csswizardry.com/inuitcss/
http://www.columnal.com/
http://stuffandnonsense.co.uk/projects/320andup/

不同之处在于,像iphone/android这样的高端移动设备有足够的支持和功能来支持网站的原始版本(缩放/javascript等)。其他设备更好地服务于为具有有限显示和/或支持的移动设备开发的基本网站。

你确实希望你的移动网站有一个特殊的URL,因为你希望你的手机网站正确地出现在搜索引擎的移动搜索中。

www实际上也是一个子域,但它经常被使用,人们通常不会意识到它,通常大多数浏览器都会默认添加它,这就是为什么大多数服务器都默认启用它的原因。

你指出的例子也是子域。服务器会检查您的HTTP请求的用户代理,并将您适当地重定向到移动子域。

这对你来说并不是一个快速的解决方案,但我强烈建议你阅读alistapart.org上Ethan Marcotte的Responsive Web Design文章。网站上有几篇文章(只要搜索响应式网页设计,你就会在结果中得到他的几篇文章。)