Правильное расположение папки при создании виртуальных каталогов в IIS 6.0?

При создании новых веб-сайтов с помощью Visual Studio .NET проекты создаются в местоположении веб-сайта по умолчанию, например. c: \ inetpub \ wwwroot \ myapp. Аналогичным образом, при создании пакетов msi для таких приложений с помощью проекта веб-развертывания Visual Studio будет использоваться настраиваемое действие для определения местоположения папки веб-сайта по умолчанию и файлов, установленных в этом месте.

Когда я смотрю на другие виртуальные каталоги в моей текущей установке IIS, я вижу следующие логические пути:

IISHelp: c: \ windows \ help \ iishelp Reports: c: \ Program Files \ Microsoft SQL Server \ MSSQL.3 \ Reporting Services \ ReportManager ReportServer: c: \ Program Files \ Microsoft SQL Server \ MSSQL.3 \ Reporting Services \ ReportServer crystalreportviewers12: C: \ Program Files \ Business Objects \ Common \ 4.0 \ crystalreportviewers12

Мой вопрос: действительно ли c: \ inetpub \ wwwroot - правильное место для использования, даже если виртуальный каталог создан на веб-сайте по умолчанию? Разве не было бы более подходящим установить файлы в c: \ Program Files \ myapp, создать виртуальный каталог, а затем указать этот виртуальный каталог в эту папку (убедившись, что для папки были назначены надлежащие разрешения, так как это будет не наследовать разрешения от c: \ inetpub \ wwwroot)?

Любые ссылки на официальные руководства по этой теме приветствуются.


person Joergen Bech    schedule 19.01.2010    source источник
comment
Это лучше подходит для serverfault.com   -  person Daniel A. White    schedule 19.01.2010


Ответы (3)


На самом деле это не имеет значения, если вы укажете IIS путь. Я придерживаюсь каталога inetpub / wwwroot. Таким образом, я могу применить к этому пути определенные сайты безопасности. Это также помогает установить различных пользователей безопасности, таких как ASP.net и учетная запись пользователя сети.

person JonH    schedule 19.01.2010
comment
Я не уверен, что вы имеете в виду, говоря, что я могу применить определенные сайты безопасности к этому пути. Это ситуация развертывания, и мы просто говорим о расположении папки, поэтому, если есть какие-либо параметры безопасности, которые необходимо применить, то, конечно же, они должны быть установлены установщиком, а не полагаться на какие-либо настройки по умолчанию в родительской папке? - person Joergen Bech; 20.01.2010

Одна из основных причин придерживаться стандартного каталога c: \ inetpub \ wwwroot \ для размещения ваших приложений заключается в том, что Windows правильно настроила разрешения для этого каталога для распространения на подкаталоги для веб-приложений. Я бы рекомендовал придерживаться этого стандарта, чтобы у вас была логическая центральная точка для различных сайтов / приложений. Это действительно просто организовано.

Теперь я не буду отрицать, что вы можете создать дополнительные корневые каталоги, а иногда это необходимо на различных сайтах клиентов / клиентов, если у вас есть отдельные жесткие диски для определенных сайтов и т. Д. Вот ссылка на настройку корневых каталогов для .net:

http://msdn.microsoft.com/en-us/library/ha2y9493.aspx

person shawnwall    schedule 19.01.2010

Я стараюсь, чтобы vdirs указывали на ту же папку, что и исходный код, что-то вроде C: \ source \ mywebapp. Таким образом, все находится в одной папке, и система управления версиями становится намного чище.

Другая причина может заключаться в том, что администратор вашего сервера (или вы) предпочитаете хранить только данные ОС на C: и хранить данные или внутренние приложения на D: (или другом диске). Это может упростить обслуживание или может быть просто политикой.

Я предлагаю не беспокоиться о том, на что указывают ваши vdirs, в конце концов, они всего лишь «виртуальные». Просто убедитесь, что ваш контент хранится в безопасном и логичном месте.

person AUSteve    schedule 20.01.2010
comment
Да, я указываю на них в другом месте во время разработки. Вопрос в лучших практиках во время развертывания. Думаю, я просто привык видеть файлы в расположении по умолчанию при использовании всех значений по умолчанию в Visual Studio (+ проекты развертывания), но видя, что основные пакеты делают что-то другое, у меня появилась причина оспорить эти предположения. Существует множество рекомендаций по размещению файлов при разработке клиентских приложений Windows, но я еще не нашел никаких рекомендаций, касающихся этой проблемы. - person Joergen Bech; 20.01.2010
comment
Размещение файлов гораздо важнее для клиентских приложений, поскольку они будут развернуты на большом количестве машин, которые часто не полностью находятся под контролем разработчика. Веб-сайты обычно развертываются только на небольшом количестве компьютеров, которые жестко контролируются разработчиком (или командой администраторов). Выберите стратегию, следуйте ей для каждого веб-сайта, который вы разрабатываете, и документируйте для тех, кто следит. - person AUSteve; 20.01.2010