У меня есть существующий веб-сайт, который мне нужно перенести на IIS 7. Сайт (который я не хочу переписывать) использует ошибку 404 для обслуживания страниц из базы данных. IOW, такой как http://crimson/pages/myPage вызывает 404, который затем переходит на site404.aspx, который генерирует HTML из базы данных.
В IIS6 я установил обработчик подстановочных знаков, сопоставленный с aspnet_isapi.dll, и сопоставил 404, чтобы он указывал на мой сайт 404.aspx, и все работало просто отлично.
Я сделал то же самое на своем новом сервере разработки с IIS 7 и не могу заставить его работать.
Я использую Classic.net AppPool
Обработчик подстановочных знаков выглядит следующим образом
<add name="WildCardHandler" path="*" verb="*" modules="IsapiModule" scriptProcessor="C:\Windows\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll" resourceType="Unspecified" requireAccess="None" preCondition="classicMode,runtimeVersionv2.0,bitness64" />
CustomErrors выглядит так:
<customErrors mode="Off" defaultRedirect="url">
<error statusCode="403" redirect="NoAccess.htm" />
<error statusCode="404" redirect="/site404.aspx" />
</customErrors>
На вкладке страниц ошибок сайта 404 сопоставляется со страницей aspx, а тип устанавливается на
Выполнить URL
При всем этом я получаю следующую ошибку:
HTTP Error 404.0 - Not Found
The resource you are looking for has been removed, had its name changed, or is temporarily unavailable. Detailed Error InformationModule IIS Web Core
Notification MapRequestHandler
Handler StaticFile
Error Code 0x80070002
Requested URL http://srvr:80/crimson/articles/index
Physical Path C:\inetpub\wwwroot\Crimson\articles\index
Logon Method Anonymous
Logon User Anonymous
Спасибо за понимание.