24.07.2012 || Раздел: || Настройка KooBoo || Контент KooBoo Версия KooBoo на момент написания статьи: 3.02 Цель: Настроить существующий сайт KooBoo на хранение содержимого (контента) в одной базе данных (БД), созданной в MS SQL Server 2008 R2. Ход выполнения:
1) Создание базы данных в MS SQL Server 2008 R2 (если уже есть, пропустите этот шаг). Создайте базу данных, где в дальнейшем Вы планируете хранить содержимое сайта KooBoo. В итоге данного этапа у вас должны быть, например, следующие данные:
2) Экспорт существующего контента на сайте. Если сайт новый, то можно пропустить этот шаг. В раскрывающемся списке нужного сайта в панели администрирования выберите пункт "Export" ("Выгрузить"). Контент будет выгружен в zip-архив (также будут выгружены настройки, темы и т.п. персонализация сайта) в указанную вами директорию. 3) Скачиваем файл Content_Providers.zip с сайта - kooboo.codeplex.com. Распаковываем. Нас интересуют только файлы из папки SQLServer. Файл SQLServer.config открываем в любом текстовом редакторе и указываем там данные для подключения к БД. Подробнее о настройке этого файла здесь - Настройка KooBoo для использования базы данных MSSQL (Microsoft SQL Server) или MongoDB В данном примере текст файла будет примерно следующим. Т.к. мы будем использовать только одну базу для всего контента, то и строка подключения одна. Файлы Kooboo.CMS.Content.Persistence.SQLServer.dll и SQLServer.config копируем в папку "bin" системы KooBoo. 4) Перезапуск сайта и импорт данных Теперь, чтобы KooBoo принял новые настройки, необходимо перезапустить веб-сайт. Теперь запускаем административную страницу сайта, которая располагается по адресу: http://<домен_сайта>/admin Удаляем все сайты, которые здесь есть, т.к. они были созданы с предыдущим провайдером, доступ к ним вы уже не получите. Создаем новый сайт (если проект "с нуля") или делаем импорт раннее выгруженного сайта. Для создания нового сайта нажмите кнопку "Create a new site" ("Создать новый сайт") и укажите имя сайта, базу данных (из файла SQLServer.config), остальные поля можно оставить по умолчанию. Для импорта сайта (если вы заранее выгрузили его в файл) нажмите кнопку "Import sites" ("Загрузить сайты"), укажите имя сайта, базу данных (из файла SQLServer.config) и выберите файл с сайтом. В итоге этих операций (если сайт был с данными по умолчанию) в БД SQL Server будут созданы следующие таблицы: Теперь запускаем сайт, чтобы проверить работу нового провайдера. Для этого в раскрывающемся меню сайта выбираем пункт "Preview" ("Предпросмотр"). Если все прошло успешно, вы увидите контент сайта. При запуске или создании сайта могут возникнуть следующие ошибки: 1) System.Data.SqlClient.SqlException: A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified) Возможные причины:
Также может возникнуть например такая ошибка: 2) System.Data.SqlClient.SqlException: Invalid object name '<имя базы>.Article'. Возможные причины: Вы удалили какие-либо таблицы из базы после создания сайта и KooBoo не может их найти. Решение: удалите папку с названием базы из директории Cms_Data\Contents и вновь создайте/импортируйте сайт. Примечание: т.к. в конфигурационном файле SQLServer.config мы указали, что нужно работать только с одной базой, то сколько бы сайтов вы не создали, все они будут работать с одним и тем же контентом. В нашем примере предполагается, что в дальнейшем мы будем работать только с одним сайтом. Чтобы каждый сайт работал со своим контентом, нужно соответственно настроить файл SQLServer.config и при создании сайта указывать соответствующее имя БД. См. также http://wiki.kooboo.com/?wiki=Switch_content_database
Похожие статьи
|
|