415c954e

Как установить asp net

Сегодня мы поговорим о том, как перенести Asp.Net-приложение из среды разработки Visual Studio на веб-сервер IIS.

При запуске в Visual Studio веб-приложение разворачивается на Visual Studio Development Server. Это внутренний веб-сервер, работающий локально в операционной системе. Он создан специально для запуска сайтов на локальной машине и не обслуживает запросы с других компьютеров. Иными словами, другой пользователь со своего компьютера не будет видеть наш сайт.

Чтобы сайт стал доступен другим пользователям, нужно разместить его на веб-сервере IIS. Это один из основных веб-серверов, использующихся на данный момент, и позволяющий запускать веб-сайты на платформе Asp.Net.

С другой стороны, чтобы наш сайт функционировал, необходимо установить .Net Framework и зарегистрировать Asp.Net в IIS. Об этом и пойдет речь.

Установка Asp.Net

На сервере, где будет располагаться сайт, необходимо установить .Net Framework. Это набор файлов и утилит, позволяющие выполнять и разрабатывать приложения, написанные в среде разработки Ms Visual Studio. Устанавливать нужно ту версию .Net Framework, с помощью которой разрабатывался наш сайт.

Как установить Asp.Net правильной версии? Проверить ее можно следующим образом: открыть проект в Visual Studio, зайти в свойства проекта (меню Проект->Свойства…). На вкладке «Построение» в поле «Требуемая версия .Net Framework» будет указана версия, под которую написано приложение.

Скачать .Net Framework можно с официального сайта Microsoft. Будем считать, что наш сайт написан на .Net 4.0. Скачать установщик можно здесь.

Качаем нужную версию .Net Framework, устанавливаем на сервере. Все, установка Asp.Net завершена!

Как зарегистрировать Asp.Net в IIS

В составе пакета .Net Framework есть утилита aspnet_regiis.exe, с помощью которой мы, собственно, и сможем зарегистрировать Asp.Net в IIS.

Отдельная статья посвящена тому, как установить и настроить IIS. Здесь будем считать, что IIS у нас уже установлен.

Опубликовано: Февраль 2012 г.

Обновлено: Февраль 2012 г.

Назначение: Windows Server 2012, Windows Server 2012 R2

Первым шагом на пути создания веб-сайта ASP.NET на IIS 8 является установка служб IIS с модулями ASP.NET. Затем следует добавить файлы приложения ASP.NET в службы IIS.

Ниже перечислены задачи, которые необходимо выполнить на этом этапе.

После этого убедитесь, что службы IIS и модули ASP.NET установлены, а приложение ASP.NET добавлено на веб-сайт. Затем перейдите к пункту Шаг 2. Настройка параметров ASP.NET.

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

    Установка служб IIS на Windows Server® 2012 с помощью пользовательского интерфейса диспетчера служб IIS.

Установка служб IIS на Windows® 8 с помощью пользовательского интерфейса диспетчера служб IIS.

Установка служб IIS с помощью командной строки.

Важно
Чтобы установить службы IIS на Windows Server 2012 или Windows 8, необходимо войти в систему как член группы "Администраторы".

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

Если вы поддерживаете веб-приложения, написанные с использованием версии ASP.NET от 2 до 3.5, перед установкой служб IIS и модулей ASP.NET установите .NET 3.5.

На начальном экране правой кнопкой мыши щелкните плитку Командная строка, а затем щелкните Запуск от имени администратора.

В командной строке введите следующую команду: dism /online /enable-feature /featurename:netfx3

Дождитесь завершения выполнения команды. Это может занять несколько минут.

Закройте окно командной строки.

На начальном экране щелкните плитку Диспетчер сервера, а затем нажмите кнопку ОК.

Читайте также:  Как изменить иконку папки в windows 7

В диспетчере сервера выберите Панель мониторинга и щелкните Добавить роли и компоненты.

В мастере добавления ролей и компонентов на странице Перед началом работы нажмите кнопку Далее.

На странице Выбор типа установки выберите "Установка ролей или компонентов" и нажмите кнопку Далее.

На странице Выбор целевого сервера выберите Выбор сервера из пула серверов, выберите имя своего сервера и нажмите кнопку Далее.

На странице Выбор ролей сервера укажите Веб-сервер (IIS) и нажмите кнопку Далее.

На странице Выбор компонентов нажмите кнопку Далее.

На странице Роль веб-сервера (IIS) нажмите кнопку Далее.

На странице Выбор служб ролей просмотрите выбранные по умолчанию службы ролей, разверните узел Разработка приложений и выберите ASP.NET 4.5 (если вы установили .NET 3.5, также выберите ASP.NET 3.5).

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

В области Добавить компоненты, которые требуются для ASP.NET 4.5? нажмите кнопку Добавить компоненты.

Будут добавлены следующие дополнительные компоненты:

    .NET Extensibility 4.5.

Расширения ISAPI.

Фильтры ISAPI.

.NET Extensibility 3.5 (если было выбрано ASP.NET 3.5).

Нажмите кнопку Далее.

На странице Подтверждение выбранных элементов для установки нажмите кнопку Установить.

На странице Ход выполнения установки убедитесь, что установка роли веб-сервера (IIS) и требуемых служб ролей успешно завершена, а затем нажмите кнопку Закрыть.

Чтобы убедиться, что службы IIS успешно установлены, введите в веб-браузер следующее:

http://localhost

Откроется страница приветствия IIS по умолчанию.

На начальной щелкните Панель управления.

В панели управления выберите Программы, а затем Включение и отключение компонентов Windows.

Чтобы установить компоненты по умолчанию, в диалоговом окне Компоненты Windows выберите Службы IIS.

Чтобы добавить компоненты, которые поддерживают ASP.NET, разверните узел Компоненты разработки приложений и выберите ASP.NET 4.5 (если вы установили .NET 3.5, также выберите ASP.NET 3.5).

Автоматически будут выбраны следующие дополнительные компоненты:

    .NET Extensibility 4.5.

Расширения ISAPI.

Фильтры ISAPI.

.NET Extensibility 3.5 (если была выбрана платформа ASP.NET 3.5).

Нажмите кнопку ОК, чтобы закрыть диалоговое окно Компоненты Windows.

Чтобы убедиться, что службы IIS успешно установлены, введите в веб-браузере следующее:

http://localhost

Откроется страница приветствия IIS по умолчанию.

Введите следующую команду в командной строке или в скрипте:

Start /w pkgmgr /iu:IIS-WebServerRole;IIS-WebServer;IIS-CommonHttpFeatures;IIS-StaticContent;IIS-DefaultDocument;IIS-DirectoryBrowsing;IIS-HttpErrors;IIS-ApplicationDevelopment;IIS-ASPNET;IIS-NetFxExtensibility;IIS-ISAPIExtensions;IIS-ISAPIFilter;IIS-HealthAndDiagnostics;IIS-HttpLogging;IIS-LoggingLibraries;IIS-RequestMonitor;IIS-Security;IIS-RequestFiltering;IIS-HttpCompressionStatic;IIS-WebServerManagementTools;IIS-ManagementConsole;WAS-WindowsActivationService;WAS-ProcessModel;WAS-NetFxEnvironment;WAS-ConfigurationAPI

В этом разделе описывается добавление приложения ASP.NET на веб-сайт следующими способами:

    Добавление приложения ASP.NET с помощью пользовательского интерфейса диспетчера служб IIS

Добавление приложения ASP.NET с помощью командной строки

В статье Планирование веб-сайта ASP.NET на IIS были определены следующие элементы:

    Строка псевдонима, которая становится частью корневого URL-адреса приложения.

Пул приложений, в котором должно выполняться приложение.

Физический путь к файлам приложения на сервере.

Откройте Диспетчер IIS.

    При работе в Windows Server 2012 на начальной странице щелкните Диспетчер сервера, а затем нажмите кнопку ОК. В диспетчере сервера выберите меню Сервис, а затем выберите Диспетчер служб IIS.

При работе в Windows 8 на начальной странице введите Панель управления, а затем в результатах поиска щелкните значок Панель управления. В окне Панель управления выберите Системы и безопасность, затем Администрирование, после чего выберите Диспетчер служб IIS.

На панели Соединения разверните узел Сайты.

Правой кнопкой мыши щелкните сайт, для которого требуется создать приложение, и выберите Добавить приложение.

В поле Псевдоним введите значение для URL-адреса приложения, например marketing. Это значение используется в URL-адресе для доступа к приложению.

Щелкните Выбрать, если нужно выбрать пул приложений, отличный от пула, указанного в поле Пул приложений. В диалоговом окне Выбор пула приложений в списке Пул приложений выберите пул приложений, а затем нажмите кнопку ОК.

Читайте также:  Как перевести страницу с китайского на русский

В поле Физический путь введите физический путь к папке приложения или нажмите кнопку обзора (. ), чтобы перейти к файловой системе для поиска папки.

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

Либо щелкните Проверка настройки, чтобы проверить все параметры, указанные для приложения.

Нажмите кнопку ОК.

Чтобы добавить приложение на сайт, используйте следующий синтаксис:

appcmd add app /site.name: строка /path: строка /physicalPath: строка

Переменная site.nameстрока — это имя веб-сайта, на который нужно добавить приложение. Переменная pathстрока — это виртуальный путь к приложению, например /application, а physicalPathстрока — это физический путь к содержимому приложения в файловой системе.

Например, чтобы добавить приложение marketing на сайт contoso, содержимое которого хранится в папке c:application, в командной строке введите следующее, а затем нажмите клавишу ВВОД:

Цель урока: Изучить Global.asax и поведение запуска веб-приложения, обработки веб-запроса. Изучение Nuget и Подключение протоколирования.

Начало

Создадим приложение ASP.NET MVC 4 Web Application «Lesson1» (рис 1.):

Не будем запускать приложение, а сразу установим (если до этого не сделали) NuGet расширение:

NuGet Package Manager – это расширение для Visual Studio, которое позволяет добавлять в существующие проекты модули, которые значительно упрощают работу. При создании «Basic» asp.net mvc4 приложения в само приложение было добавлено изначально много модулей. Их список мы можем найти, кликнув в Manage NuGet Packages… в контекстном меню проекта:

О них по порядку:

  • Entity Framework – обеспечивает работу с БД
  • jQuery (+ jQuery UI, jQuery Validation) – популярный javascript framework (о нем еще пойдет речь позже).
  • Json.NET – классы для работы с json-форматом данных.
  • knockoutjs – javascript библиотека для работы с Model View ViewModel архитектурой. (http://knockoutjs.com/)
  • Microsoft.Net Framework 4 Http Client Libraries – программный интерфейс для работы с HttpContext-ом.
  • Microsoft ASP.NET MVC 4 – собственно, классы паттерна проектирования MVC (то, что есть предметом изучения)
  • Microsoft ASP.NET Razor 2 – view-движок. Есть еще ASPX и Spark – мы о них также будем говорить позже
  • Microsoft ASP.NET Universal Providers Core Libraries (Microsoft ASP.NET Universal Providers for LocalDB) – предоставляет инструменты для поддержки всех SQL Server 2005 (и более поздних) и для SQL Azure.
  • Microsoft ASP.NET Web API (Microsoft ASP.NET Web API Client Libraries, Microsoft ASP.NET Web API Core Libraries, Microsoft ASP.NET Web API Web Host) – для создания REST приложений, работа с XML, JSON и так далее
  • Microsoft ASP.NET Web Optimization Framework – оптимизирует передачу данных, например, минимизирует js-код
  • Microsoft ASP.NET WebPages 2 – набор классов для работы во View
  • Microsoft jQuery Unobtrusive Ajax (Microsoft jQuery Unobtrusive Validation) – jQuery библиотека для поддержки ajax/валидации
  • Microsoft.Web.Infrastructure – позволяет динамически регистрировать HTTP-модули во время выполнения
  • Modernizr – js-библиотека, которая позволяет использовать html5 и css3 в старых браузерах
  • WebGrease – позволяет минифицировать html, css, js.

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

Для метода (действия) Index добавим View и выберем

Views/Shared/_Layout.cshtml в качестве layout (типа master page):

Собственно, можем запускать.
Всё что мы увидим – это:

Почему контроллер надо было назвать именно Home и как это работает, мы будем изучать более подробно в следующих уроках.

Global.asax

А сейчас обратим внимание на файл Global.asax:

Класс MvcApplication наследует HttpApplication и содержит инструкции для инициализации приложения. Есть еще несколько событий, на которые можно добавить код. Рассмотрим их:

  • public void Init() – приложение инициализируется или при первом вызове. Оно вызывается для всех экземпляров объекта HttpApplication.
  • public void Dispose() – вызывается непосредственно перед уничтожением объекта HttpApplication. Это идеальное место для очистки ранее используемых ресурсов.
  • Application_Error – наступает, когда необработанное исключение случается в приложении.
  • Application_Start – наступает, когда первый экземпляр HttpApplication создается. Это позволяет создавать объекты доступные для всех экземпляров класса HttpApplication.
  • Application_End – наступает, когда все созданные ранее экземпляры класса HttpApplication уничтожены. Это событие наступает только однажды в течение всего времени жизни приложения.
  • Application_BeginRequest – наступает, когда приложение получает запрос. Первый раз это событие наступает для запроса страницы, когда пользователь вводит URL.
  • Application_EndRequest – Последнее событие, которое наступает для запроса к приложению.
  • Application_PreRequestHandlerExecute – наступает прежде, чем ASP.NET запустит обработчик страницы или веб-службу.
  • Application_PostRequestHandlerExecute – наступает, когда ASP.NET заканчивает обработку.
  • Applcation_PreSendRequestHeaders – наступает перед тем, как ASP.NET посылает клиенту (браузеру) HTTP заголовки.
  • Application_PreSendContent – наступает перед тем, как ASP.NET посылает клиенту (браузеру) HTTP содержимое.
  • Application_AcquireRequestState – наступает, когда ASP.NET получает текущее состояние (состояние сессии), связанное с текущим запросом.
  • Application_ReleaseRequestState – наступает, когда ASP.NET завершает исполнение всех событий. В результате все модули сохраняют свои текущие состояния.
  • Application_ResolveRequestCache – наступает, когда ASP.NET выполняет запрос авторизации. Это позволяет модулям кеширования обработать запрос и обслужить из кэша, минуя обработчик выполнения.
  • Application_UpdateRequestCache – наступает, когда ASP.NET завершает выполнение обработчика, чтобы модули кеширования могли сохранить результат для использования в последующих ответах.
  • Application_AuthenticateRequest – наступает, когда модуль идентификации устанавливает личность текущего пользователя как действительную. В текущий момент, учетные данные пользователя уже проверены.
  • Application_AuthorizeRequest – наступает, когда модуль авторизации подтверждает, что пользователь может иметь доступ к ресурсам.
  • Session_Start – наступает, когда новый пользователь заходит на сайт.
  • Session_End – наступает, когда истекает время сессии пользователя, или он покидает сайт.
Читайте также:  Карта спутника 2018 год высокого разрешения

Хорошо. Теперь, чтобы воочию убедимся, что всё именно так и происходит, добавим протоколирование и сделаем это через добавление NLog модуля в NuGet.

Package Manager Console

В NuGet есть консоль для выполнения команд по установкеудалениюпоиску модулей, и других вещей, типа скаффолдинга.
Для вывода всех установленных модулей пишем:

Для получения всех доступных к установке модулей:

Для получения всех доступных модулей с названием NLog

Для установки модуля NLog необходимо вначале выбрать проект (если их в солюшене больше одного) и ввести команду:

Файлы копируются в проект, добавляются ссылки на сборки и web.config может быть обновлен.
Для удаления из проекта модуля необходимо, чтобы он не был связан с другими модулями. Удаляем так:

После установки пользуемся документацией на NLog (https://github.com/nlog/nlog/wiki/Tutorial) и добавляем в Web.config:

Мы ее потом исправим. Добавим в код (Global.asax.cs):

Запустим и завершим приложение (Stop). Откроем файл C://file.txt. Мы увидим, какие события происходили.

В Application_Start выполняется регистрация:

  • Area (области),
  • Filter (фильтры),
  • Bundle (комплекты),
  • Route (маршруты).

Подробности по инициализации Filter, Вundle и Route находятся в папке App_Start.

WebActivator

WebActivator – это модуль, который позволяет запустить код до самого первого старта App_Start. Это может быть необходимо для того, чтобы, к примеру, создать тестовую БД перед запуском.
Установим:

Добавим класс в App_Start папку:

В файле логов увидим, что строка Application PreStart исполняется раньше Application Start:

Создадим четыре файла отдельно для trace (трассировки), debug (отладки), info (информации), error (ошибки). Определим место записи: /Contents/logs/[текущая дата] Перепишем конфигурацию:

Log2Console

Для NLog есть еще классная программа Log2Console, которая позволяет получать логи прямо в окне программы.

Запускаем программу и настраиваем приемщик:

Ссылка на основную публикацию
Как удалить файл php
Как удалить файл с моего сервера с помощью PHP если файл находится в другой директории? вот мой макет страницы: projects/backend/removeProjectData.php...
Как создать словарь в word
Меня интересует вот такая тема: когда печатаешь текст на компе, например, с ошибкой правописания, появляется подсказка - как правильно надо....
Как создать таблицу на компьютере
Как создать таблицу в Word? Сейчас я просто не представляю, как можно работать без такой нужной и полезной программы, как...
Как удалить файл если он используется
Не редко встречаются ситуации, когда нужно удалить файл, но Windows сообщает, что файл занят другим процессом. Это может быть важный...