Запретить веб-сайт Azure устанавливать файлы cookie WAWebSiteID и ARRAffinity
У меня есть веб-сайт Windows Azure в общем режиме.
Теперь Azure, очевидно, добавляет два файла cookie на мой веб-сайт: WAWebSiteID
и ARRAffinity
.
Я узнал, что эти файлы cookie доступны для включения липких сеансов с функцией маршрутизации приложений и запросов (ARR) за балансировщиками нагрузки Azure.
Тем не менее, мой веб-сайт не требует липких сессий, и я не хочу, чтобы эти куки были.
Во-первых, у меня никогда не было ни малейшего представления о том, что липкие сеансы пересекают мой взгляд, поэтому я написал приложение для масштабирования с равномерно распределенными запросами на всех интерфейсах. Важные сессии фактически меняют распределение, поскольку есть клиенты, которые делают много запросов, а клиенты почти ничего не делают. Когда распространяется только первый запрос и последующие запросы одного и того же клиента на тот же сервер, это имеет серьезные последствия для общей производительности моего приложения.
Во-вторых, для обеспечения конфиденциальности данных я запускаю cookieless-приложение, и любой cookie считается "злым". Я знаю, что могу удалить их с помощью javascript, но я даже не хочу, чтобы они были переданы клиенту.
Вопрос: как отключить липкие сессии и эти два файла cookie на моем веб-сайте Azure на стороне сервера?
Ответы
Ответ 1
Обновление
Теперь вы можете отключить его на портале в настройках веб-приложения. Вы также можете использовать проводник ресурсов, как описано в этом сообщении в блоге: https://blogs.msdn.microsoft.com/appserviceteam/2016/05/16/disable-session-affinity-cookie-arr-cookie-for-azure-web-apps/
Оригинал
Я знаю, что это старый вопрос, но похоже, что ARR Azure IIS обновлен до версии 3 и среди других новых функций он имеет "отказ от сеанса".
У Бен Ари есть сообщение об этом здесь:
http://blogs.technet.com/b/erezs_iis_blog/archive/2013/09/16/new-features-in-arr-application-request-routing-3-0.aspx
В короткой версии вы можете добавить Arr-Disable-Session-Affinity: True
в свои заголовки ответов, а липкие сеансы будут отключены.
Самый простой способ - добавить заголовок в customHeaders
node файла web.config
следующим образом:
<system.webServer>
<httpProtocol>
<customHeaders>
<add name="Arr-Disable-Session-Affinity" value="True" />
</customHeaders>
</httpProtocol>
</system.webServer>
Ответ 2
Вы не можете отключить липкие сеансы для веб-сайтов Azure. ARR и липкие сессии не для вас и для вашего приложения. Это основополагающие основы работы Azure Web Sites. Липкость заключается в маршрутизации запросов на ваш farm
(если у вас более одного экземпляра).
Проверьте это видео, чтобы получить более глубокое понимание веб-сайтов Azure.
UPDATE
Поскольку этот ответ был впервые опубликован, было много обновлений для приложений Azure Web Sites. Одна из них - возможность отказаться от Affinity Cookie.
Проверьте Geoff
ответ для деталей!