Чтобы использовать маршруты в IIS 6, вам, вероятно, требуется сопоставление с подстановочными знаками в IIS; по той же схеме , что и (для ASP.NET MVC, но с той же концепцией) - хотя, если честно, я бы ожидал 4xx для файла, который не был найден.
500 обычно указывает на более серьезную проблему - например, идентификация пула приложений не настроена правильно и не может выполняться как служба. Проверьте журнал событий на сервере на наличие сообщений.
в сторону; всегда старайтесь развиваться на чем-то максимально приближенном к реальной хостинговой платформе. Например, я запускаю сервер Win2003 в виртуальной машине для размещения IIS6. Это спасет вас от многих неожиданностей, когда вы приступите к развертыванию.