Слишком большой запрос / заголовки в Azure, если включена авторизация - PullRequest
2 голосов
/ 25 мая 2019

У меня есть приложение node / express, которое отлично работает локально. Я загрузил его в Azure Web App, и он работает нормально, если я не включаю аутентификацию. Когда я включаю AAD auth, приложение завершается с STATUS 500.1011 «Bad Request». У меня довольно много параметров запроса в URL. Если я достаточно уменьшу длину параметров, приложение снова загрузится нормально. Кажется, в Azure есть ограничение на количество запросов / заголовков?

Я уже несколько часов пытаюсь это исправить, но думаю, что должен признать поражение. Я думал, что, возможно, это исправит это, но это не похоже на это.

Это мой текущий web.config:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <system.webServer>
        <webSocket enabled="true" />
        <handlers>
            <add name="iisnode" path="server.js" verb="*" modules="iisnode"/>
        </handlers>
        <rewrite>
        <rules>
            <rule name="NodeInspector" patternSyntax="ECMAScript" stopProcessing="true">
                <match url="^server.js\/debug[\/]?" />
            </rule>
            <rule name="DynamicContent">
                <conditions>
                    <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="True"/>
                </conditions>
                <action type="Rewrite" url="server.js"/>
            </rule>
        </rules>
        </rewrite>
        <security>
            <requestFiltering>
                <requestLimits maxQueryString="32768" maxUrl="65536"/>
            </requestFiltering>
        </security>
        <httpErrors existingResponse="PassThrough" />
    </system.webServer>
</configuration>

1 Ответ

0 голосов
/ 26 мая 2019

Я думаю, что нашел проблему. Узел уменьшил максимальный размер заголовка с 80 КБ до 8 КБ в ноябре 2018 .

Существует много дискуссий по этому поводу здесь и здесь .

Я попытался увеличить max-http-header-size, но не смог заставить его работать в Azure. Поэтому мое решение на данный момент заключается в использовании более старой версии узла. Надеюсь, что в итоге в этих дискуссиях будет опубликовано решение.

...