Mvc iis установить как приложение

Обновлено: 19.09.2024

Для IIS6 я могу использовать помощников IIS в Wix, чтобы установить веб-приложение следующим образом:

К сожалению, для IIS7 это не работает. Мы не хотим использовать механизм aspnet_isapi.dll, а хотим, чтобы интегрированный конвейер обрабатывал маршрутизацию запросов. Пул приложений, созданный этим сценарием, находится в классическом режиме, а не в интегрированном, поэтому ни один из обработчиков не запускается правильно.

Как правильно установить приложение MVC на IIS 7?

К сожалению, расширения IIS еще не поддерживаются IIS7.

3 ответа

Расширения IIS для WIX не поддерживают IIS7. Команда IIS продолжает переписывать метабазу между версиями. Есть немало вещей, которые не работают, в том числе отсутствие интегрированного пула приложений.

Пока расширения не будут переписаны, у вас останется три варианта:

  • Используйте сборку в настраиваемых действиях для вызова appcmd.exe
  • Используйте XmlConfig для обновления applicationHost.config
  • Напишите свои собственные действия

На данный момент я выбрал параметр xmlconfig, поскольку вы можете сделать это внутри компонента и привязать его к функции.

Это не совсем так. Майк проделал большую работу, чтобы IIS7 поддерживался существующими CustomActions. К сожалению, код поддерживает только "устаревшие" вещи. Как отмечалось выше, для интегрированного конвейера требуется специальный код. Хорошо - я не знал, что ведется работа по поддержке IIS7 - я видел комментарий, предполагающий, что поддержка Apache может появиться раньше: p У меня сложилось впечатление, что некоторые вещи работают, если вы включили совместимость с метабазой IIS6, и все. Рад слышать. Чтобы было ясно, вам все еще нужна совместимость с метабазой IIS6, но, по крайней мере, она должна работать. И это был мой случайный комментарий, когда я был зол на IIS.

Я лично рекомендую использовать AppCmd.exe (первый пункт Matthewthurlow), потому что вам не нужно рассчитывать на устанавливаемые устаревшие компоненты управления или рисковать вручную изменять конфигурационный XML.

Если вам не нравится AppCmd, у Майка Володарского есть отличная статья на Начало работы с AppCmd.exe, а Справочник по настройке IIS от Microsoft превосходны, предлагая примеры пользовательского интерфейса, кода и AppCmd ​​для изменения каждого из элементов конфигурации (например, пулы приложений ). Пакет администрирования IIS7 также включает редактор конфигурации, который позволяет генерировать сценарии AppCmd ​​ из любой существующей конфигурации.

Чтобы интегрировать AppCmd ​​в WiX, вам необходимо создать и запланировать два настраиваемых действия для каждой команды. Общая информация содержится в руководстве по WiX v3, документирующем эту процедуру, и я ' Ниже приведен конкретный пример.

Во-первых, вам нужно настроить немедленное действие для сохранения командной строки в свойстве:

Затем вы настраиваете отложенное действие, которое ссылается на это свойство:

И, наконец, вам нужно запланировать это. Немедленное действие, устанавливающее свойства, кажется, хорошо работает после InstallFinalize, а отложенное действие работает после InstallFiles. Я еще не дошел до выяснения действий отката.

MapGuide Open Source широко использует этот метод; вы можете увидеть расписание центров сертификации в нашем MapGuide. wxs и определение CA в нашем файл IIS7.wxs.

http://www.freetimes.org.ua/ViewCataloguesImages/bokaly/5.aspx

На хостинге у Вас должно быть установлено: Windows Server (2003/2008/. ), net. Framework 4, IIS. Так же MS SQL, если Вы используете эту БД.

Компания хостинг может Вам дать доступ к серверу через ftp или удаленный доступ к серверу (и в том и другом случае это IP-адрес сервера и логин/пароль пользователя).

Сначала нам нужно получиться файлы сайта, которые мы будет публиковать на сервер. Откроем нужный проект в Visual Studio и сделаем некоторую подготовительную работу.

В "Solution Explorer" развернем папку "References". Найдем референс "System.Web.Mvc" нажмем на нем правой кнопкой мышки и в контекстном меню выбираем "Properties". Установим свойство "Copy Local" в True.


Установить свойство "Copy Local" в True я порекомендую так же для System.Web.Helpers, System.Web.Routing, System.Web.WebPages. В целом, если Вам не будет хватать какой-то библиотеки для работы сайта, то система Вам про это сообщит, когда Вы зайдете на сайт.

Следующий интересный момент это Web.config. В Visual Studio 2008 таких файликов три (сгруппированы в один: Web.Debug.config - для программинга, Web.Release.config - для развертывания). Но я ними пользоваться не привык, по этому удаляю их из фалов для публикации. Для этого в контекстном меню всех троих файлов выбираю пункт "Properties" и устанавливаю параметр "Build Action" в "None"


Я это делаю для того, что бы не перезаписать web.config боевого сайта из файлом web.config для разработки.

После подготовительных работ, нажимаем правой клавишей на названии проекта и выбираем "Publish. "


Откроется окно "Publish Web". В нем мы должны указать, куда публиковать наш сайт. Можно его заливать сразу на сервер (например через ftp), но я такой метод не поддерживаю. Я публикую файлы сайта в какую-то временную папку (например D:\public), а уже потом из нее переношу, только нужные мне файлы на боевой сайт.

Итак, выбираем "Publich method:" -> "File System". Указываем путь, где буду создаться файлы сайта в параметре "Target Location". Так же устанавливаем параметр "Delete all existing files prior to publish", что бы папочка "D:\public" была очищена перед публикацией. Жмем кнопку "Publish".

Ждем, когда студия покажет нам статус "Publish succeeded"


Теперь перейдем в нашу папку. Как видите в этой папке есть папка bin в которой хранятся все dll-файлы, которые были помечены как "Copy Local". Так же Вы видите что файл web.config не был скопирован. Давайте его копируем в корень "D:\public" из исходников нашего сайта (копировать нужно только файл Web.Config, другие два не нужны). Так же web.config для боевого сайта нужно изменить, а именно нужно указать, что сайт находиться не под дебагом. Для этого измените строку <compilation debug="true" targetFramework="4.0"> на <compilation targetFramework="4.0">. Так же нужно изменить строку подключения к БД, если вы ее используете.

Теперь сайт готов к публикации.

Если нам компания предоставила только ftp, то копируем туда созданные файлы, и надеемся, что все настройки сайта они сделали правильно. Если нет, то рассмотрим, как нужно развертывать сайт на примере Windows Server 2008:

2) Нажимаем правой клавишей мышки на "Мой компьютер" и выбираем "Manage" (Управление)


3) Переходим в раздел "Internet Information Services". В этом разделе создаем новый "Application Pool". Как правило, я поток называю так же как и сайт.


4) Теперь на папке "Sites" выбираем "Add Web Site. "


5) Заполняем окно. Указываем название сайта, обязательно выбираем созданный "Application Pool", указываем путь к папке с исходниками сайта. Жмем ОК.



Теперь, если Вы привязали домен сайта к северу (указали в A-записи IP адрес сервера), то сайт должен работать

не работает! у меня выводит только список файлов и все!

У Вас в IIS настроено отображать не сайт, а файлы. 1. In Features View, double-click Directory Browsing (Просмотр каталога). 2. In the Actions pane (Действия), click Enable if the Directory Browsing feature is disabled and you want to enable it. Or, click Disable if the Directory Browsing feature is enabled and you want to disable it.

"Теперь, если Вы привязали домен сайта к северу (указали в A-записи IP адрес сервера), то сайт должен работать" - что за "A-запись"? Расскажите, пож., подробнее, где надо указывать IP-адрес сервера?

Все компы, на кот. пытаюсь посмотреть сайт находятся в "WORKGROUP".

Про настройку в курсе - спасибо! Всё, проблема решена - виной всему брандмауэр, который я думал, что отключил, на самом деле - нет. После отключения всё заработало.

Что бы Вам помочь, мне нужно знать: 1) Являетесь ли вы программистом? 2) Вы удалено можете зайти на сервер? или он вам доступен только через ftp? 3) Какого расширения у Вас файлы базы данных? (*.bak, *.mdf, *.ldf) 4) В какие файлы и папки у вас для сайта (если файлы "*.cs", ".csproj")?

Леонид. 1 Да я программист 2 Могай зайти и на фтп и на сервер 3 Bak 4 Есть Я Вам написал на почту

Добрый день, не все сайты будут работать на windows 2003 (ей уже больше 10 лет!). В целом перенос реален, главное что бы на сервере стояли все необходимые программы (база данных, IIS).

Если в системе установлена ​​операционная система 32, войдите в каталог:

dism /online /enable-feature /all /featurename:IIS-ASPNET45

После успешного выполнения команды: На карту программы IIS будут добавлены следующие элементы:


2) Настроить в IIS

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

Интеллектуальная рекомендация

Gensim Skip-Gram модель для Word2Vec

Вступление Генизм - это библиотека Python с открытым исходным кодом, которая используется для легко эффективно извлечь семантические темы в документах. Он используется для обработки оригинального, нес.


Встраиваем VSCode в OpenCV IDE (C ++, window10 1803)

Каталог статей вступление окружение шаг 1. Конфигурация Visual Studio Code 2. Конфигурация OpenCV 3. Конфигурация MinGw 4. Конфигурация cmake 5. Конфигурация проекта 6. Ссылка на ссылку В конце концов.


Интеграция и инструменты fastDFS + spring + maven

После завершения установки его нужно интегрировать в проект. 1. Поместите файл в папку config. 1.1 Содержание файла tracker_server = 192.168.1.202: 22122 - адрес сервера отслеживания, номер порта по у.


Основы Linux

Пользователи Linux делятся на два типа: Пользователь суперадминистратора: root, хранится в каталоге / root Обычные пользователи: хранятся в каталоге / home Каталог Linux /: [*] Корневой каталог. Как п.

Обычно, когда говорят о web-сервере, подразумевают решения на базе платформы Linux. Но если ваша инфраструктура развернута на основе Windows Server то логично будет использовать веб-сервер IIS. Вопреки распространенному мнению, это весьма популярная платформа, которая позволяет работать как с большинством популярных CMS, так и имеет широкий спектр систем, предназначенных для работы именно на Windows и IIS.

Для установки веб-сервера на платформе Windows перейдем в оснастку Роли в Диспетчере сервера и выберем установку ролей Веб-сервер (IIS) и Сервер приложений.

webserver-iis-001.jpg

webserver-iis-002.jpg

webserver-iis-003.jpg

После чего установите выбранные роли. Для проверки работоспособности IIS наберите в браузере IP-адрес вашего сервера, вы должны будете увидеть стандартную страницу-заглушку веб-сервера.

webserver-iis-004.jpg

Теперь перейдем в к настройке сервера, для этого откроем Диспетчер служб IIS (находится в Пуск - Администрирование).

webserver-iis-005.jpg

Первым делом создадим новый сайт, для этого щелкните правой кнопке на пункте Сайты в боковом меню Диспетчера IIS и выберите Создать новый сайт.

webserver-iis-006.jpg

В открывшемся окне укажите имя сайта, путь к корневой папке (по умолчанию сайты пользователей располагаются в C:\inetpub\wwwroot), которую следует предварительно создать и укажите имя узла (доменное имя сайта), в нашем случае iissite.local

webserver-iis-007.jpg

Не забудьте добавить A-запись с именем вашего сайта на DNS-сервер или пропишите необходимые строки в файлы hosts тех рабочих станций, откуда будете обращаться к сайту

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

Далее укажите привязку FTP-cлужбы к сетевым интерфейсам и портам, а также настройте параметры безопасности. Если вы собираетесь использовать SSL, то учтите что вам потребуется сертификат, хотя если вы будете использовать FTP-доступ только для собственных нужд, то можно обойтись самоподписанным сертификатом. Не забудьте поставить галочку для автоматического запуска FTP-сайта.

webserver-iis-009.jpg

На следующей странице укажите параметры доступа к серверу, мы советуем указывать конкретных пользователей, которые будут работать с данным сайтом.

webserver-iis-010.jpg

Попробуйте подключиться через FTP используя любой клиент и загрузите проверочную html страницу с именем index.html, пример такой страницы мы приводили здесь. Если все сделано правильно, то, набрав в браузере имя нашего сайта, вы увидите такую страницу:

webserver-iis-011.jpg

Веб-сервер настроен и вы можете использовать его для размещения HTML-страниц, однако современные сайты используют для хранения своих данных СУБД, поэтому следующим шагом установим MS SQL Express 2012, возможностей которого с лихвой хватит для наших задач. Установка производится со значениями по умолчанию, кроме Режима проверки подлинности, который следует переключить в Смешанный режим и задать пароль суперпользователю SQL-сервера sa.

webserver-iis-012.jpg

Мы будем устанавливать Orchard CMS, для получения пакета пройдите по ссылке и выберите Загрузить как zip, распакуйте полученный архив и закачайте в корень сайта содержимое папки Orchard.

webserver-iis-013.jpg

webserver-iis-014.jpg

webserver-iis-015.jpg

Затем установите необходимые права на папку с сайтом, вам нужно добавить пользователю IIS_IUSRS возможность записи и изменения содержимого данной папки.

webserver-iis-016.jpg

Также не забудьте создать базу данных для сайта, для этого зайдите в SQL Server Management Studio и, щелкнув правой кнопкой на пункте Базы данных в боковом меню, создайте новую базу.

webserver-iis-017.jpg

Для установки CMS наберите в браузере адрес сайта и следуйте указаниям скрипта установки. Никаких сложностей там нет, единственное затруднение может вызвать правильное указание параметров подключения к SQL-серверу. Укажите что вы используете SQL Server (или SQL Express)

  • server=SERVERNAME\SQLEXPRESS - имя сервера, на котором установлен SQL-сервер, и экземпляра SQL-сервера.
  • database=iissite - имя базы данных (в нашем случае iissite)
  • user=sa - пользователь СУБД (в нашем случае sa)
  • password=sapasswd - пароль пользователя sa.

Так как наш сайт предназначен для внутреннего использования и использует изолированный экземпляр SQL, то мы использовали для доступа к серверу параметры пользователя sa, если же вы собираетесь размещать на веб-сервере несколько сайтов и администрировать их будут разные пользователи, то заведите на SQL сервере дополнительных пользователей и для подключения используйте их учетные данные, не забыв ограничить им доступ только к "своим" базам.

Спустя некоторое время, необходимое для установки CMS, в вашем браузере отобразиться страница сайта с тестовым содержимым. Можете переходить в админ-панель и настраивать сайт согласно ваших потребностей.

webserver-iis-019.jpg

Несмотря на то, что мы рассмотрели установку только одного "движка", установка других CMS производится аналогичным образом и сложностей вызвать не должна

В следующей части нашей статьи мы расскажем как добавить нашему серверу поддержку PHP для запуска на нем популярных CMS написанных на этом языке.

Читайте также: