Обнаружение / перенаправление браузера, который не поддерживает SNI с GAE
Я настроил SNI/SSL в своем приложении для приложений, используя эту превосходную страницу.
Я бы хотел, чтобы мой сайт работал на тех, кто еще работает в старых браузерах, которые не поддерживают SNI. В идеале я хотел бы обнаружить эти старые браузеры и перенаправить их на https://myapp.appspot.com/.
Я видел несколько сообщений о людях, которые делают это с помощью правил переписывания Apache, но, конечно, вы не можете сделать это с помощью движка приложений.
Очень бесполезная документация GAE гласит
Мы рекомендуем определять браузеры, которые не поддерживают SNI, и рекомендовать браузер, который его поддерживает.
но не дает нам никакой подсказки, как это сделать.
Есть идеи, как это сделать?
1 ответ
Вам нужно будет использовать SSL с виртуальным IP.
Причина этого заключается в том, что старые браузеры, которые не поддерживают SNI, просто не отправляют никаких указаний на запрашиваемое имя сервера (хоста) - только IP-адрес. Поскольку обычно Google размещает множество веб-приложений на своих внешних и общих IP-адресах, у Google просто нет возможности отправить запрос вашему приложению в этом общем сценарии.