Comments 13
А как у Web deploy с безопасностью? Соединение шифруется?
И как быть, если на машине разработчика и на боевом сервере параметры web.config различаются?
И как быть, если на машине разработчика и на боевом сервере параметры web.config различаются?
Можно использовать SSL-сертификат для шифрования соединения:

На машине разработчика следует работать в конфигурации «Debug», а деплоить на сервер уже в конфигурации «Release»:

При этом в проекте существует 2 сущности файла web.config, которые собираются в итоговый web.config, который используется при работе с виртуального веб-сервера на машине разработчика или деплоится на сервер, в зависимости от выбранной конфигурации:


На машине разработчика следует работать в конфигурации «Debug», а деплоить на сервер уже в конфигурации «Release»:

При этом в проекте существует 2 сущности файла web.config, которые собираются в итоговый web.config, который используется при работе с виртуального веб-сервера на машине разработчика или деплоится на сервер, в зависимости от выбранной конфигурации:

Большое спасибо! Вы пролили мне свет на деплой (web.release.config)! 10 лет в .NET а про правильный workflow не знал! По старинке ручками по защищенному ftp-каналу и руками правил веб.конфиг.
В мире Rails правильный workflow прививают с пеленок, жаль что в .NET не так.
P.S. А как сделать, чтобы определенная директория на сервере при деплое никогда не заменялась (в моем случае та куда пользовательские изображения складываются)
В мире Rails правильный workflow прививают с пеленок, жаль что в .NET не так.
P.S. А как сделать, чтобы определенная директория на сервере при деплое никогда не заменялась (в моем случае та куда пользовательские изображения складываются)
Всегда пожалуйста! :)
Если директория создана на сервере вручную, то при деплое с ней ничего не произойдет вообще.
Если директория создана на сервере вручную, то при деплое с ней ничего не произойдет вообще.
Кстати, сейчас глянул в своем проекте в VS2010 (webforms), у меня нет 2 разных веб.конфигов.
Беру свои слова назад. Добавил руками эти имена файлов — встало как и у Вас внутри Web.Config :)
Хорошо, что разобрались :)
Эти имена файлов не надо добавлять руками. Когда ты создашь конфигурацию в менеджере конфигураций, нужно после этого кликнуть правой кнопкой по web.config и выбрать Add config transform из контекстного меню, это правильный способ.
На самом деле, под «добавил руками» я и понял ручное добавление посредством контекстного меню «Add config transform».
А Visual Studio 2012 автоматически создает оба файла при создании нового проекта веб-приложения, если уже существует больше 1 конфигурации.
А Visual Studio 2012 автоматически создает оба файла при создании нового проекта веб-приложения, если уже существует больше 1 конфигурации.
Спасибо. А в файлы вставить только различающиеся параметры?
Те параметры которые будут в Web.Debug.config и Web.Release.config из Web.config нужно убрать?
Те параметры которые будут в Web.Debug.config и Web.Release.config из Web.config нужно убрать?
Оригинальный конфиг должен содержать все значения, которые позволяют запускать сайт локально. Отдельные конфиги для каждого окружения должны трансформироваться через трансформацию веб конфига. Там можно менять атрибуты элементов, добавлять новые элементы, и т.д.
Еще есть такая особенность:
если поставить сначала WebDeploy, а потом IIS Management Services (например через WebPlatform installer), то сервис так же не будет доступен. Приходится удалять WebDeploy и ставить заново — после этого все работает.
если поставить сначала WebDeploy, а потом IIS Management Services (например через WebPlatform installer), то сервис так же не будет доступен. Приходится удалять WebDeploy и ставить заново — после этого все работает.
Sign up to leave a comment.
Решение проблем настроек web-сервера при публикации web-приложений