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

Классическая стартовая страница ASP не найдена (404) в IIS 7 в Windows Server 2008 R2

Мой сайт / приложение указывает на папку под названием «сайт» со всеми настроенными разрешениями. В этой папке находится «home.asp». Документ по умолчанию - «home.asp». Когда я захожу в домен, я получаю «страница не найдена». Если я зафиксирую эту ошибку 404 в IIS и скажу перенаправить на home.asp, все заработает. Проблема в том, что я не хочу перенаправлять все 404 на home.asp. Я хочу, чтобы сайт по умолчанию был home.asp и нашел его. Есть идеи, почему это происходит? Нужно ли мне что-то делать со стороной .Net, чтобы она по умолчанию использовала сторону .ASP? Нужно ли мне создавать страницу .aspx по умолчанию, которая перенаправляет на мой "home.asp"? Если да, то как назвать эту страницу?

Вот мой файл web.config, если он дает какие-то идеи:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.web>
        <sessionState timeout="45" />
        <httpRuntime executionTimeout="350" maxRequestLength="1024000000" />
    </system.web>
    <system.webServer>
    <!-- asp runOnEndAnonymously="false" /-->
        <security>
            <requestFiltering allowDoubleEscaping="true">
                <fileExtensions>
                    <remove fileExtension=".asa" />
                </fileExtensions>
                <requestLimits maxAllowedContentLength="1024000000" />
            </requestFiltering>
        </security>
        <staticContent>
            <mimeMap fileExtension=".asp" mimeType="application/asp" />
        </staticContent>
        <defaultDocument>
            <files>
                <remove value="default.aspx" />
                <remove value="iisstart.htm" />
                <remove value="index.html" />
                <remove value="index.htm" />
                <remove value="Default.asp" />
                <remove value="Default.htm" />
                <add value="home.asp" />
            </files>
        </defaultDocument>
        <httpErrors errorMode="DetailedLocalOnly">
            <remove statusCode="404" subStatusCode="-1" />
            <error statusCode="404" prefixLanguageFilePath="" path="/home.asp" responseMode="ExecuteURL" />
        </httpErrors>
        <asp bufferingOn="true">
            <limits bufferingLimit="1024000000" maxRequestEntityAllowed="1024000000" />
            <session timeout="00:40:00" />
        </asp>
        <directoryBrowse enabled="false" />
    </system.webServer>
</configuration>

[Из моего комментария]

Тот факт, что перенаправление работает, означает, что по определению первый запрос не совпадает со вторым (в противном случае перенаправление вызвало бы еще один запрос 404). Посмотрите в журналах IIS, как выглядит первый запрос по сравнению с перенаправленным.