Как развернуть сайт Orchard CMS, включая все настройки и контент из среды разработки?

Я пытался создать и развернуть сайт, работающий на Orchard CMS. Ранее я загружал Orchard, настраивал среду разработки, внес несколько изменений в исходный код, добавил и изменил тему, добавил некоторый контент и так далее. Я использовал SQL CE в качестве базы данных. Теперь я хочу создать и развернуть весь сайт. Я создал пакет развертывания, запустив скрипт сборки, как описано здесь. Легко просто скопировать встроенный пакет на хост-сервер. Однако при посещении сайта я теперь получаю процедуру установки нового сайта. По-видимому, настройки и содержимое cms из моей среды разработки не были отражены в пакете развертывания. Таким образом, мне нужно скопировать весь контент и заново выполнить все настройки, включая повторное создание всех виджетов и т. Д.

У кого-нибудь есть хорошие идеи о том, как опубликовать сайт Orchard от разработки до рабочей среды, включая настройки cms, настройки виджетов, контент и т. Д.? Все руководства, которые я нашел в Интернете, описывают, как использовать WebMatrix для развертывания сайта Orchard на общем хостинге или Azure, но все эти руководства заканчиваются тем, что у них была чистая установка Orchard. Чего я хотел бы добиться, так это разработать сайт локально, а затем перенести весь сайт на сервер хостинга.

3 ответа

Решение

Если вы создали пакет развертывания и перенесли его на свой сервер (через FTP), вы почти закончили. Есть две вещи, которые вы должны сделать после этого. Помните, что не запускайте первоначальную настройку.

  1. Скопируйте папку ~/App_Data из разработки в производство. Если вы переносите файлы с помощью ftp, обязательно переносите их в двоичном режиме. Убедитесь, что учетная запись, под которой запускается AppPool, имеет разрешения на чтение / запись для этой папки.
  2. Если вы используете SQL Server Compact. Ничего не делать - база данных уже была скопирована в 1.
  3. Если вы используете базу данных SQL Server 2005/2008. Перенесите свою базу данных в производственную среду. Затем измените строку подключения, чтобы она указывала на новую базу данных в файле Settings.txt, расположенном в ~/App_Data/Sites/Default.

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

Я действительно ценю ответ Петра в первую очередь. Я также хотел бы добавить сюда то, что я нашел, основываясь на ответе Петра. Вот мои шаги по развертыванию проекта Orchard после нескольких дней, чтобы выяснить, какой самый простой способ развернуть. [Общая концепция и требования для развертывания] 1. Используя Visual Study 2010 (или эквивалентный инструмент) и скомпилируйте все проекты. На этом этапе не существует скрытого или сложного процесса для компиляции всего кода, верно?

  1. Запустите "ClickToBuild.cmd" для сборки из командной консоли. Вот хитрые шаги здесь. Вы можете получить много помощи от http://stefantsov.com/msbuild-and-msdeploy-for-orchard для редактирования файла Orchard.proj. Вы можете столкнуться с множеством ошибок красного цвета, которые вы должны удалить, оставив комментарий в файле Orchard.prof. Не забудьте запустить командное окно в режиме администратора. Как только вы успешно скомпилируете и соберете с помощью ClickToBuild.cmd, вы готовы перейти к следующему шагу. Не граничите, чтобы построить для тестового проекта. Я только что закомментировал все тестовые проекты для сборки.

  2. Если у вас отсутствуют мультимедийные файлы, скопируйте файлы из ~\src\Orchard.Web\Media*.* В папку ~\build\Stage\Media\.

  3. Скопируйте все файлы из папки ~\src\Orchard.Web\App_Data в ~\build\Stage\App_Data, кроме папки журнала. Если вы хотите изменить URL-адрес по умолчанию, который называется "OrchardLocal", вы можете изменить его на странице администратора или вручную изменить код. (или просто сохраняйте то же имя приложения, когда вы вставляете новое приложение в IIS).

  4. Создать (или добавить) новое приложение на сервере IIS. Убедитесь, что в вашем пуле приложений установлен "интегрированный режим", а не классический.

  5. Если у вас битые ссылки на страницах, вам нужно перейти на страницу администратора. И убедитесь, что базовый URL совпадает с вашим URL-адресом по умолчанию из /admin/settings/Index page. Перейдите в меню навигации на странице администратора и проверьте все URL-адреса.

Даже при том, что у меня есть некоторые ошибки, которые я пока не вижу в окнах Bing-map / facebook, теперь все работает нормально. Надеюсь, это поможет.

В дополнение к копированию подхода с использованием папки app_data, вы можете использовать концепцию под названием Orchard recipe, которая позволяет вам экспортировать и импортировать контент / модули, поэтому при установке в реальной среде все, что вам нужно сделать, это выбрать рецепт, и все будет включено как необходимо. Узнайте больше на http://docs.orchardproject.net/Documentation/Making-a-Web-Site-Recipe

Другие вопросы по тегам