Я Установка Elmah для работы над веб-сайтом. Это хорошо работает на моей локальной машине, но когда я переместил его в веб-сервер, я получаю это исключение
Ошибка конфигурации
Описание: ошибка произошла во время обработки конфигурационного файла, требуемого обслуживать этот запрос. Рассмотрите определенные детали ошибки ниже и измените Ваш конфигурационный файл соответственно.
Сообщение об ошибке синтаксического анализатора: Нераспознанный раздел конфигурации elmah/security.
Исходная ошибка:
Line 110: </connectionStrings>
Line 111: <elmah>
Line 112: <security allowRemoteAccess="1" />
Line 113: <errorLog type="Elmah.SqlErrorLog, Elmah" connectionStringName="CadaretGrantConnectionString"/>
Line 114: <!-- Don't log 404 -->
Это показывает мне ошибку в Line 112. Что должно быть сделано, чтобы заставить Elmah работать с удаленным доступом?
Ниже моя конфигурация
<elmah>
<security allowRemoteAccess="1" />
<errorLog type="Elmah.SqlErrorLog, Elmah" connectionStringName="ConnectionString"/>
<!-- Don't log 404 -->
<errorFilter>
<test>
<equal binding="HttpStatusCode" value="404" valueType="Int32"/>
</test>
</errorFilter>
</elmah>
Оказывается, для включения удаленного доступа в elmah мне пришлось не только добавить раздел
<elmah>
<security allowRemoteAccess="yes" />
</elmah>
в
, но также
<sectionGroup name="elmah">
<section name="security" type="Elmah.SecuritySectionHandler, Elmah" />
</sectionGroup>
Добавление раздела выше решило мою проблему
Возможно, на вашем веб-сервере работает другая версия IIS. IIS7 (в режиме интегрированного конвейера) требуются обработчики и модули в разделе
, тогда как более ранним версиям они нужны в
. Убедитесь, что вы добавили конфигурации в правильный раздел. См. Эльма не работает с сайтом asp.net для получения дополнительной информации.
Мой опыт работы с IIS ограничен, так что воспринимайте это с долей соли...
Сниппет web.config, который вы опубликовали, выглядит корректно. Судя по сообщению об ошибке, мне кажется, что Elmah вообще не работает на вашем веб-сервере. Вы проверили, что правильно включили Elmah с помощью блока
? Проверили ли вы, что elmah.dll является частью вашего проекта?
(Также важно проверить
, как описано в ответе minimalis, но похоже, что вы не дошли до этого)