Я настраиваю IIS7.5 на новом 64-битном сервере для обработки старого веб-сайта, который использует несколько 32-битных компонентов и базу данных MS Access.
Я успешно настроил пул приложений для поддержки 32-битной версии, так что Jet4.0 и старые компоненты работают правильно.
Однако IIS работает странным образом: когда пул приложений включен с 32-битным флагом и возникает ошибка (я пытался вызвать ошибку деления на ноль, поэтому ошибка 500 и ошибка 404 не найдена), это не так. не показывает страницу с ошибкой, а только полностью пустую пустую страницу.
Если ошибка 500 происходит, скажем, в середине выполнения скрипта, скрипты показывают свой вывод до тех пор, пока не возникнет ошибка, а затем молча останавливаются. Веб-сайт настроен на использование страниц ошибок IIS по умолчанию, поэтому нет никакой специальной настройки для страниц ошибок.
Это странное поведение не происходит, если 32-разрядный пул приложений отключен. В этом случае все работает нормально.
Я сделал несколько поисков в Google и увидел, что с этой проблемой столкнулись другие люди, но я пока не смог найти никакого решения.
Я сам нашел решение, хочу поделиться им с сообществом:
Такое поведение имеет место только в том случае, если для пула приложений включен 32-разрядный режим. Если 32-битный режим отключен, ошибка отображается даже при установке для параметра «Включить отладку на стороне сервера» значения True. Очевидно, существует проблема с обработкой сообщений об ошибках между 32-битными пулами приложений на 64-битном сервере.