У меня очень простое веб-приложение (asp.net MVC3, .net 4, использующее IIS, а не встроенный сервер Visual Studio, 64-битная Windows 7). Когда я изменяю настройки в пуле приложений для своего приложения и устанавливаю «Включить 32-разрядные приложения» в значение «Ложь», отображается представление моего приложения, но не отображается статическое содержимое (Content / Site.css или Scripts / myScript.js) вверх. Вместо этого я получаю код состояния 500 по этим запросам.
Ошибка HTTP 500.0 - Внутренняя ошибка сервера
Невозможно отобразить страницу, поскольку произошла внутренняя ошибка сервера.
Причина, по которой я изменяю это значение, заключается в том, что я пытаюсь использовать 64-разрядный Oracle.DataAccess.dll, и если для меня установлено значение True, это заставляет пул приложений работать в режиме WOW64, и он пытается загрузить dll с неверным форматом.
Я искал в Интернете некоторое время и не могу найти много информации об этом. Я пытался играть с правами доступа к файлам, я пытался запустить aspnet_regiis со всеми видами флагов. У меня нет идей. Почему IIS не обслуживает этот статический контент при работе в 64-битном режиме?