Относительные пути не разрешены в IIS5 так же, как IIS6 - PullRequest
0 голосов
/ 02 декабря 2010

У меня есть веб-сайт на C #, который отлично работает в IIS6 и IIS7 в интрасети компании, но сейчас я пытаюсь установить тот же веб-сайт на Windows XP с IIS5 для другой части интрасети компании. Содержание сайта в порядке, но CSS и меню все не работают, так как некоторые относительные пути не могут быть найдены.

Я использую некоторые обозначения, подобные этому: <img src="Images/a.gif", который работает нормально, а некоторые вроде этого: MasterPageFile="~/App_MasterPages/Default.master", который также работает нормально, но такие вещи: @import "/App_Themes/Default.css" и это: src="../App_Scripts/stringformat.js" не годятся В коде позади Request.ApplicationPath также отсутствует знак "/" в конце.

Я попытался снять флажок «Включить родительский путь» в IIS и сделал iisreset, но это не имело никакого значения. Я также пытался установить IIS Developer Express, но это сбивало с толку и слишком много. Я не хочу проходить через все приложение и менять каждый относительный путь только для поддержки формата IIS5, но это мой единственный вариант? (кроме обновления Windows)

1 Ответ

0 голосов
/ 05 декабря 2010

Я подозреваю, что в IIS6 & 7 указанное приложение развертывается в корне сайта, а в XP / IIS5.1 вы развернули его в подпапку, работающую как приложение IIS.

У вас есть два варианта:

  1. Развертывание сайта в корне IIS5.1 (c:\inetpub\wwwroot).

  2. Исправьте абсолютные пути и сделайте их относительными, т.е. @import /App_Themes.

  3. Продолжайте работать с IIS Developer Express, это не так уж и плохо.

...