IIS8 ищет web.config в виртуальном каталоге, а не в корне приложения

У меня есть виртуальное приложение в IIS8, http://localhost:80/application/, файлы для которого находится в папке C: \ inetpub \ wwwroot \ application. В папке ~ / application / есть файл web.config.

Под приложением у меня есть виртуальный каталог http://localhost:80/application/vdir/ , файлы для которых находятся в J: \ virtual_directory.

Когда я пытаюсь получить доступ к файлу в каталоге / vdir /, я получаю ошибку HTTP 500.19 - Внутренняя ошибка сервера, в которой говорится, что он не может прочитать файл конфигурации в \? \ J: \ virtual_directory \ web.config

Почему он ищет там файл web.config, а не C: \ inetpub \ wwwroot \ application \ web.config? У меня никогда не было этой проблемы в IIS 7, я впервые настраиваю ее на сервере Windows 2012.

(Примечание: J: сопоставлен с общей папкой в ​​сети. Не уверены, имеет ли это значение?)


person Jay Irvine    schedule 18.02.2016    source источник
comment
Есть только виртуальный каталог или приложение. Не изобретайте что-то вроде виртуального приложения. Подключенные диски не поддерживаются ни одной версией IIS. Поскольку web.config разрешен на любом уровне, IIS попытается прочитать его с любого уровня.   -  person Lex Li    schedule 18.02.2016


Ответы (1)


Ладно, оказалось, мне пришлось сделать две вещи:

  1. Создайте виртуальный каталог, используя UNC-путь (\\ servername \ sharedfolder), а не букву подключенного диска.

  2. использовать сетевую учетную запись в учетных данных физического пути в расширенных настройках, а не сквозную аутентификацию по умолчанию

person Jay Irvine    schedule 18.02.2016
comment
Как создать виртуальный каталог, используя путь UNC ?? IIS этого не допускает - person Thanasis Ioannidis; 13.11.2020
comment
Если быть честным? Я не знал, что это не должно работать, поэтому просто сделал это. Возможно, наши серверы на работе имеют дополнительные расширения для IIS типа серверной фермы, на самом деле я не специалист по сетям. - person Jay Irvine; 29.12.2020