Назад | Перейти на главную страницу

IIS 7.5 + CGI + SSL - Как увеличить лимит загрузки?

У меня очень неприятная проблема с IIS 7. Я настроил свой web.config по книгам следующим образом:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <handlers>
            <add name="Python" path="*.cgi" verb="*" modules="CgiModule" scriptProcessor="C:\Python27\python.exe -u &quot;%s&quot;" resourceType="Unspecified" requireAccess="Script" />
        </handlers>
        <security>
            <requestFiltering>
                <!-- maxAllowedContentLength is in bytes (B)  -->
                <requestLimits maxAllowedContentLength="1073741824" /> <!-- 1GB -->
            </requestFiltering>
        </security>
        <rewrite>
            <rules>
                <rule name="rewrite to hgwebdir" patternSyntax="Wildcard">
                    <match url="*" />
                    <conditions logicalGrouping="MatchAll" trackAllCaptures="false">
                        <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
                    </conditions>
                    <action type="Rewrite" url="hgweb.cgi/{R:1}" />
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
    <system.web>
        <!-- maxRequestLength is in kilobytes (KB)  -->
        <httpRuntime maxRequestLength="1048576" /> <!-- 1GB -->
    </system.web>
</configuration>

Когда я отправляю сообщение в сценарий CGI (это hgweb для Mercurial через Python) через HTTP, все в порядке - никаких проблем.

Однако, когда я отправляю POST в сценарий через HTTPS (SSL), я все еще ограничен лимитом загрузки по умолчанию в 30 МБ. Для меня это не имеет никакого смысла. Что происходит?!

Это несовместимость в модуле SSL Python 2.7.3+.

Ошибка задокументирована здесь, на сайте TortoiseHg, но она применима ко всем платформам, использующим IIS через HTTPS.

https://bitbucket.org/tortoisehg/thg/issue/2593/cant-push-over-30mb-to-iis-via-https

Более подробная информация об этом содержится в моем сообщении на StackOverflow:

https://stackoverflow.com/a/16486104/97964