Как получить доступ к содержимому портала DotNetNuke? - PullRequest
4 голосов
/ 24 августа 2011

Всего вопросов о Noob на DotNetNuke, используя его впервые.
Мой клиент дал мне дамп своего сайта (сделанный в DNN), и он хочет разместить свой сайт у меня.

У него есть список порталов. Я хотел бы знать, как я могу просмотреть один в localhost.
Я создал приложение DotNetNuke в своем локальном IIS, которое указывает на код, который дал мой клиент. В этой папке находится файл DotNetNuke.webproj.

Внутри каталога Portals Я получил, например, папку с именем StackMe. Как я могу получить доступ к этому порталу?

Когда я просматриваю http://localhost/DotNetNuke/, он перенаправляется на http://localhost/DotNetNuke/Install/UnderConstruction.htm

Ответы [ 3 ]

8 голосов
/ 24 августа 2011

Если он перенаправлен на Under Construction, сайт, вероятно, не сможет получить доступ к базе данных. DotNetNuke не сможет ничего отображать без подключения к базе данных. Вы можете получить больше информации, если попытаетесь нажать http://localhost/DotNetNuke/Install/Install.aspx?mode=none

Сопоставление портала с URL-адресом обрабатывается в таблице базы данных PortalAlias. У вас должна быть возможность добавить URL-адрес localhost в эту таблицу, а затем получить доступ к сайту (как только сайт попадет в базу данных). Если на сайте есть несколько порталов, вам нужно добавить псевдоним для каждого портала, к которому вы хотите получить доступ.

6 голосов
/ 24 августа 2011

Если вы видите страницу в разработке, что-то не так (капитан здесь очевиден).

Некоторые шаги по устранению неполадок на вашем локальном компьютере:

  1. Поворот Пользовательские ошибки отключены в web.config.Чтобы вы могли видеть любые ошибки ASP.NET, если они всплывают.
  2. Убедитесь, что DotNetNuke может подключиться к вашей базе данных.Есть два места, которые нужно проверить в файле web.config.
    • В <connectionStrings> проверьте элемент <add name="SiteSqlServer" ... />.
    • в <appSettings> проверьте элемент <add name="SiteSqlServer" ... />.
  3. В вашей базе данных SQL найдите таблицы DNN.Таблица, которая вас интересует, будет называться «PortalAlias» (или «dnn_PortalAlias» или каким-либо другим префиксом таблицы).Каждый портал сопоставлен с URL.Если DNN обнаружит, что вы пришли на сайт с помощью URL-адреса, он не распознает, он перенаправит вас на тот, который распознает.
    • Запустите SQL-запрос и посмотрите, что находится в PortalAlias ​​(запустите select *).Запишите идентификатор портала.
    • Вставьте новую запись в таблицу.INSERT INTO PortalAlias (PortalID, HttpAlias) VALUES (<YourPortalID>, 'http://yoururl')
    • Перезапустите сайт, перезапустив пул приложений или сбросив IIS
    • Проверьте IIS и убедитесь, что ваш сайт работает с правильными разрешениями.
    • Проверьте IIS и убедитесь, что пул приложений сайта работает в правильной версии .NET Framework.

Если все, что не удалось ...

Я имел ограниченный успех, переименовал каталог Install во что-то другое, скажем _Install и снова зашел на сайттак что я могу видеть, что является ошибкой ASP.NET.После того, как я снова запустил сайт, я вернул его первоначальное имя.

Удачи!

0 голосов
/ 24 августа 2011

Это будет длинная история, но я постараюсь сделать ее небольшой:

Если вы правильно настроили сайт localhost / dotentnuke, сделайте резервную копию базы данных, прежде чем пытаться выполнить следующие действия:

  1. Посмотрите на таблицу portalAlias ​​в базе данных и увидите записи с portalID = 0
  2. Удалите все записи для портала 0 и измените одну запись, указав localhost / DotNetNuke
  3. Попробуйте запуститьURL снова.

Имейте в виду, что portalAlias ​​- это таблица, в которую ищет dnn, а portal 0 - это портал по умолчанию, поэтому в псевдониме портала должна быть хотя бы одна запись для portal 0.

Поскольку у вас есть экземпляр dnn с несколькими порталами, вы должны создать отдельный веб-сайт для каждого из них, если они являются родительскими порталами.и измените httpalias на свой локальный URL-адрес для каждого портала.

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

...