"Запрещенная" ошибка при удаленном доступе к elmah.axd через HTTPS в ASP.NET WebForms

Я пытаюсь интегрировать ELMAH в приложение webforms. По причинам, которые я не могу изменить, все приложение должно быть доступно только через HTTPS.

Приложение работает, но мы не можем получить доступ к файлу журнала ELMAH удаленно. Я следовал этим инструкциям, чтобы разрешить удаленный доступ без успеха.

Это связанная конфигурация в настоящее время в производственном файле web.config:

<configuration>
    <configSections>
        <sectionGroup name="elmah">
            <section name="security" requirePermission="false" type="Elmah.SecuritySectionHandler, Elmah" />
            <section name="errorLog" requirePermission="false" type="Elmah.ErrorLogSectionHandler, Elmah" />
            <section name="errorMail" requirePermission="false" type="Elmah.ErrorMailSectionHandler, Elmah" />
            <section name="errorFilter" requirePermission="false" type="Elmah.ErrorFilterSectionHandler, Elmah" />
        </sectionGroup>
    </configSections>
    <elmah>
        <security allowRemoteAccess="yes" requirePermission="false" />
        <errorLog type="Elmah.XmlFileErrorLog, Elmah" logPath="~/App_Data" />
    </elmah>

    <system.web>

        <httpModules>
            <add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah"/>
        </httpModules>
        <httpHandlers>
            <add verb="POST,GET,HEAD" path="elmah.axd" type="Elmah.ErrorLogPageFactory, Elmah" />
        </httpHandlers>

Есть ли что-нибудь еще, что я мог сделать? Кто-нибудь знает, есть ли какое-то ограничение в доступе к файлу журнала ELMAH через HTTPS?

Обратите внимание, что в настоящее время мы используем IIS 6.0 и.NET Framework 2.0.

2 ответа

Решение
  1. Поместите простой HTML-файл в тот же каталог.
  2. Попробуйте получить доступ к этому файлу.

Если вы не можете получить доступ к этому файлу, это проблема с правами доступа к каталогу. Поскольку нет физического файла axd, для него нет никаких разрешений, поэтому я склонен думать о безопасности каталогов.

Я не думаю, что это имеет какое-либо отношение к SSL - 403 означает "у вас нет доступа к этому элементу"... это не должно иметь ничего общего с безопасностью транспорта. То есть, если он не работал нормально, пока вы не включили SSL.

Вы также можете проверить права на выполнение в каталоге... разрешить все (чтение, запись, выполнение) и посмотреть, имеет ли это значение.

Решение: в вашем конфигурационном файле: измените 0 на 1

<security allowRemoteAccess="0" />

в

<security allowRemoteAccess="1" />

который работает как шарм.

Наслаждаться!!

Другие вопросы по тегам