Azure应用服务具有生产测试设置,允许您将流量路由到不同的插槽,Scott Hanselman talks about it here
但是 - 当我完成了,并且我想阻止不同插槽之间的路由流量时,如何将其关闭并完全禁用它,以便所有流量都返回到我的生产槽?使用天蓝色门户网站,我可以将所有100%的流量路由回到我的" production"插槽,但因为它基于cookie(有一个名为x-ms-routing-name
的cookie设置用户所关注的当前插槽),它只适用于新流量 - 已经路由到另一个插槽的用户停留路过它。
是否可以关闭"这个功能完全可以让所有流量回到我的主要生产位置?
答案 0 :(得分:2)
有一个名为x-ms-routing-name的cookie,用于设置用户所关注的当前插槽
x-ms-routing-name 可以让您将请求路由到特定的插槽。
要使用它将用户重新路由到特定的插槽,您必须确保该插槽已添加到“流量路由”列表中。
您可以使用网页中的以下链接,让用户选择退出您的测试版应用:
<a href="<webappname>.azurewebsites.net/?x-ms-routing-name=self">Go back to production app</a>
字符串 x-ms-routing-name = self指定生产槽。
一旦客户端浏览器访问该链接,它不仅会被重定向到生产槽,而且每个后续请求都将包含x-ms-routing-name = self cookie,将会话固定到生产槽。
有关详细信息,请参阅此article。
答案 1 :(得分:0)
如果您配置了AppService的“路由规则”参数,则将获得x-ms-routing-name
标头。
作为快捷方式,您可以删除在Azure门户中的数字0。
您也可以null
整个routingRules
部分,例如通过https://resources.azure.com。
"type": "Microsoft.Web/sites/config",
"location": "West Europe",
"properties": {
"routingRules": [
{
"actionHostName": "mysite-myslot.azurewebsites.net",
"reroutePercentage": 4,
"changeStep": null,
"changeIntervalInMinutes": null,
"minReroutePercentage": null,
"maxReroutePercentage": null,
"changeDecisionCallbackUrl": null,
"name": "myslot"
}
],
如果完全禁用该设置,则必须等待大约一分钟。然后,即使客户端仍然将其指向您的暂存槽,AppService也会开始忽略x-ms-routing-name
标头。