пятница, 12 октября 2012 г.

Как развернуть ASP MVC приложение на Somee.com


В этой статье мы рассмотрим способ разворачивания веб сайта, реализованного с помощью технологии ASP.NET MVC и Framework 4.0 на бесплатном ASP.NET хостинге somee.com.


         Переходим по ссылке “Control panel”  на форму следующего вида:



Перед регистрацией хозяева хостинга настоятельно просят нас посетить их онлайн магазин и заказать пакет услуг. Без этого в форму регистрации не попадешь. Но в их магазине есть бесплатный пакет – правда с ним удастся создать лишь один сайт на хостинге (то что нужно для начала).
 Идем по ссылке “Visit our store” и выбираем бесплатный пакет, как показано красной стрелкой :



И после этого нам доступна форма регистрации, которую необходимо заполнить:

После регистрации соглашаемся с условиями использования (ставим галочки) и жмем“Continiue”:


Теперь нам доступна веб админка:



 В админке переходим по ссылке “WebSites”, и жмем "Create" – создать сайт.








 Далее конфигурируем наш веб сайт, заполняем поле “Site name”, выбираем ОС и веб сервер, и версию ASP.NET. Жмем “Create website”.







Именно здесь и начнем процесс разворачивания нашего ASP MVC приложения. Для успешного его окончания надо внести несколько изменений в проект нашего веб сайта в Microsoft Visual Studio. Я использовал Microsoft Visual Studio 2010. Необходимо в разделе “Ссылки” вашего ASP MVC проекта выставить опцию "Копировать локально” в true для следующих сборок:

 EntityFramework.dll

System.Web.Helpers.dll
System.Web.Mvc.dll
System.Web.WebPages.dll
И произвести build вашего приложения.


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

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




После создания всех папок получается следующая структура проекта:


Внутренняя структура каждой папке в этом списке должна строго соответствовать структуре папок вашего проекта. К примеру папка Views содержит:





Рассмотрим на примере, каким образом заливать файлы сборок в папку “bin” после нажатия на кнопку “upload”. Заливаем все файлы с расширением “dll” в папку “bin”:


Теперь рассмотрим момент, связанный с локальной БД MS SQL. Файл БД расположен

в папке App_Data проекта. Для того чтобы перенести его на хостинг, создадим там БД:

Жмем “Databases” и “Create” в админке:





Затем создаем БД, даем ей название, выбираем версию сервера БД и жмем “Create empty database”:



Если создание БД прошло успешно, появляется сообщение с предложением перейти к администрированию созданной БД( “Click here to manage database”).





1 - это сформированная строка связи с БД (она понадобится позднее);
2 – опция для прикрепления локального файла БД, который на данный момент находится в папке App_Data нашего веб проекта (имеется в виду папка App_Data на хостинге, куда вы, надеюсь, залили файл ASPNETDB.MDF).
Жмем “Attach database”:


  1. Выбираем веб проект;
  2. Выбираем месторасположение файла БД;
  3. Выбираем сам файл БД;
  4. Жмем “Attach” и прикрепляем БД; 

Далее необходимо прописать строку связи с нашей БД в файл Web.config.
Копируем строку связи в буфер.


И затем через file manager (1) открываем Web.config (2) для редактирования:



Меняем строку связи на нашу:



Добавим следующие строки в раздел System.web Web.config:


<pages

         pageParserFilterType="System.Web.Mvc.ViewTypeParserFilter, System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"

         pageBaseType="System.Web.Mvc.ViewPage, System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"

         userControlBaseType="System.Web.Mvc.ViewUserControl, System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">





Нажимаем “Save” в верхнем правом углу редактируемого файла web.config. 
Пришло время проверить, как работает наш веб сайт на хостинге.
Жмем (1), затем (2) для просмотра.



Видим, что все работает:







Можно регистрироваться, логиниться и выходить. 
Всем спасибо за внимание!




6 комментариев:

  1. Этот комментарий был удален автором.

    ОтветитьУдалить
  2. Здравствуйте!
    Целый день играюсь, чтобы выложить сайт на сервер, все страницы которым не требуется базы данных работают корректно. А там где используется база данных, отображает ошибку запроса. Базу данных создал и прикрепил к ней свою старую базу данных. Делаю запросы к базе данных тоже отображает корректно. А вот сайт и база данных, не хочет корректно работать, помогите пожалуйста разобраться ?

    ОтветитьУдалить
  3. Добрый вечер. А строку связи в web.config вы изменили как показано? если изменили и не помогло, то напишите пожалуйста текст ошибки.

    ОтветитьУдалить
    Ответы
    1. Здравствуйте, делаю все как в инструкции, но при загрузке *.mdf и *.LDF выдает ошибку Server was unable to process request. ---> The network path was not found., прошу помощи, нужно срочно сдать проект. В папку App_Data добавил два файла, в проекте локальном также они есть, не пойму в чем проблема

      Удалить