ASP Classi c Метод Server.GetLastError () возвращает Null в пользовательских страницах ошибок IIS10 - PullRequest
0 голосов
/ 09 мая 2020

Я настраиваю страницу пользовательской ошибки с кодом состояния 500-100. asp на сервере Windows 2019 с IIS v10. На странице я создаю экземпляр метода Server.GetLastError (). Все возвращаемые значения - NULL, 0, -1 или просто пустые, как показано в следующем выводе:

ASPCode: 
Number: 0
Source: 
Category: 
File: 
Line: 0
Column: -1
Description: 

Server.GetLastError () все еще должен поддерживаться и фактически будет работать, если " Пункт меню «Изменить настройку функции ...» используется для указания того же относительного пути к файлу, что и при первоначальной настройке, а параметр «Пользовательские страницы ошибок» изменен на «Подробные ошибки». Однако тогда все другие уже определенные пользовательские страницы ошибок будут выполняться дважды.

Обратите внимание, что я нашел аналогичный вопрос для этой проблемы (здесь, в Stackoverflow), озаглавленный следующим образом: «Отключение настраиваемых ошибок IIS8 для Classi c ASP - Возможная ошибка в IIS?» Однако он предназначен для IIS 8.0, и человек, написавший принятый ответ, сказал, что не помнит, как именно исправить проблему.

1 Ответ

0 голосов
/ 11 мая 2020

Это было решено. Оказалось, что мне нужно было просто использовать действие «Добавить» в области «Страницы ошибок» в IIS-10 и создать новую запись, используя 500.100 в качестве типа кода состояния. Это сработало отлично. Теперь метод Server.GetLastError () возвращает значения, как и предполагалось, и ни одна из других страниц ошибок клиентов не выполняется дважды (см. Вопрос stackoverflow.com/q/61627238/692942 для получения дополнительной информации). Это было нелегко решить, поэтому я искренне надеюсь, что это поможет другим, у кого такая же проблема.

...