2017-05-01 69 views
1

我有我想主办的blob存储中的文件。我希望最终用户进入某个特定路径,然后收到针对其国家/地区的特定回复。Azure CDN地理重定向

如我所拥有的文件: usa.js uk.js

我想用户去xxxx.edgesites.net,然后,如果他们在美国,如果uk.js接受他们usa.js他们在英国。

azure CDN的地理过滤功能看起来像只允许或阻止根据地理位置进行访问。

是否有另一种达到我最终目标的方式?也许CDN - >函数 - > blob?

回答

1

其实你可以在Verizon的优质型材做这一切在Azure的CDN。

Premium配置文件提供规则引擎 - 位置匹配条件,您可以将其与URL重写功能配合使用以指向特定于语言环境的文件。

查看更多:https://docs.microsoft.com/en-us/azure/cdn/cdn-rules-engine-reference-match-conditions#Location

+0

谢谢!你能帮助我实际上应该放在规则引擎中吗?等待新规则积极进行并且我似乎在投入所有错误的价值是痛苦的缓慢。我在想:如果(国家匹配“美国”),那么URL重写源:“(。*)”为“us- $ 1”。然后,所有进入CDN的请求都会获取文件的“我们”版本。 – Quincy

+0

^谢谢。你有没有看到我的跟进上面? – Quincy

+0

这只是1个js文件,还是一个大数? –

0

Azure CDN不会为你工作,因为它以一种节省互联网延迟的方式缓存单个文件进行全局分发以加速下载。

要实现您要查找的内容,您可以使用Azure流量管理器。使用性能算法创建流量管理器。然后指定一个指向您的Azure存储帐户的外部端点,并将Azure存储帐户放置在美国地区,并在英国地区放置存储帐户。但是,您需要使用相同的文件名命名文件。然后,当每个地区的用户尝试下载文件时,他们将被定向到离Internet距离最近的Azure Region。

的请求会像这样,一旦你有流量管理器和您的存储帐户设置正确:

USA User -> hits domain.com -> directed to US region -> downloads file.js for US 

UK User -> hits domain.com -> directed to UK region -> downloads file.js for UK 

另外,您也可以使用地理路由算法与流量管理器直接在特定国家用户特定端点。在您描述的情况下,这可能对您更好。

https://docs.microsoft.com/en-us/azure/traffic-manager/traffic-manager-routing-methods

+0

感谢,这样做的缺点是,我需要建立一个域。 – Quincy

+0

@Quincy您可以使用Azure CDN子域作为您的端点,不需要设置自定义域。 –

+0

谢谢,听起来像在Azure CDN上我使用“自定义来源”制作端点,并且将交通管理器地址放入该端点中? – Quincy