CDN支持在2个文件之间切换,具体取决于User-agent

时间:2011-04-26 02:24:27

标签: webserver cdn amazon-cloudfront

我有一个难题。我希望我的整个域名都由CDN托管。所以根页www.mysite.com/应该由CDN提供服务。这可以。但是,我想有条件地服务于不同的页面(或重定向),这取决于是否检测到用户代理字符串是移动的(例如像在http://detectmobilebrowser.com/上)。如果可能的话,我希望能在服务器端完成这项工作。

我知道Cloudfront可以提供依赖于标头的相同文件的2个不同版本(gzip与否),但我找不到任何文档说明它或其他任何人是否支持依赖于用户代理的任何切换方式。有人遇到过这样做的方式吗?

感谢您的帮助:D,
Alec

2 个答案:

答案 0 :(得分:0)

content delivery network(CDN)更像是托管您的静态内容,如图片,脚本,媒体文件,文档等,而不是整个网站。

意思是通过从原始服务器中删除静态内容来减轻负载,并通过世界各地的服务器网络更加本地地提供静态内容。

您希望做的典型主机设置是在“普通”提供商处托管页面/服务器,检测用户代理(客户端或服务器端),然后呈现指向静态资源的链接基于用户代理托管在CDN上。

至于你的第二点,如前所述,CDN被认为是托管静态文件,因此不太可能对用户代理进行服务器端检测。如果你有一个托管环境,就像我在你选择的提供商处加上一个页面/服务器所说的那样加上一个CDN,你将拥有所有选择。

某些提供商(例如Media Temple)在其正常的网页/服务器托管之上提供CDN支持。

希望有所帮助。

答案 1 :(得分:0)

当用户尝试访问您想要切换的网页或对象时,您的CDN必须能够使用HTTP响应进行回复301基于用户代理文本解析结果永久移动。