Назад | Перейти на главную страницу

IIS 7.5 и ARR - Server.MapPath, показывающий путь на сервере ARR, а не на сервере содержимого

В настоящее время я создаю веб-ферму, используя ARR и платформу веб-фермы.

У нас есть два сервера ARR, которые являются частью их собственного кластера NLB с веб-фермой, содержащей два идентичных сервера содержимого.

Я развернул приложение на ферме, чтобы провести некоторое тестирование и столкнулся с проблемой. При попытке загрузить файл через указанное веб-приложение (или любое другое в этом отношении), которое находится на серверах содержимого, я получаю следующую ошибку:

Доступ к пути C: \ inetpub \ wwwroot \ content \ attachments \ 8 запрещен.

После небольшой детективной работы я обнаружил, что этот путь находится на сервере ARR, а не на сервере содержимого, на котором находится приложение, и я ожидал, что файл будет загружен.

Приложение определяет, куда его нужно загрузить, используя HttpContext.Server.MapPath(@"\content\attachments\" + id);

Путь, который я ожидал увидеть, будет D:\Web Data\Application\Content\Attachments\8 это локальный путь, существующий в одном месте на всех серверах содержимого веб-фермы.

Я знаю, что есть способы сделать это, изменив сами приложения, но если мы можем помочь, разработчикам это не потребуется.

Есть ли в ARR / IIS что-то, что нужно настроить / можно настроить так, чтобы приложения могли видеть файловую систему на компьютере, на котором они фактически находятся в веб-ферме?