Виртуальный каталог IIS сопоставлен с сетевым диском (с буквой диска), но не удается создать файл - PullRequest
5 голосов
/ 21 декабря 2010

Я использую C # / ASP.NET, IIS6 на Windows Server 2003.

  1. Сопоставьте общую папку сервера данных с WebServer с помощью буквы драйвера V: \

  2. На WebServer IIS создал виртуальный каталог и указал на «локальное расположение» с помощью V: \. Поскольку нет «Подключить как», не уверен, какой пользователь будет использоваться

  3. В моем WebMethod я хочу создать файл в общей папке с помощью FileStream.Write ().

    У меня есть IO Exception в действии, есть подсказка?

P.S. Я добавил ASPNET / NETWORK SERVICE в общую папку сервера данных.

спасибо! Gavin

Ответы [ 2 ]

9 голосов
/ 21 декабря 2010

Подключенные сетевые диски зависят от учетной записи пользователя, которая их создала:

Использование подключенных дисков с IIS - MS KB257174

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

Весьма вероятно, что NETWORK SERVICE (или есливы используете ASP.NET под олицетворением, анонимная учетная запись сайта) не имеет этого сопоставления.

Чтобы изменить местоположение, на которое указывает виртуальный каталог, перейдите на свой сайт в диспетчере IIS, щелкните правой кнопкой мышивиртуальный каталог и выберите свойства.Затем вы можете выбрать «Общая папка, расположенная на другом компьютере »:

alt text

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

Веб-сайт в IIS имеет соответствующий пул приложений, и это должно сообщить вам пользователя, под которым будет выполняться ваш код. Вы должны будете предоставить соответствующие разрешения для этого ресурса для этого пользователя.

...