Notas del Terrible
Заметки Ужасного Зануды

DotNetNuke Installation

октября 8, 2009 11:25 by terR0Q

Продолжая тему DotNetNuke, пара замечаний на счет установки.

Если система ставится на 80-й порт, то всё просто прекрасно и просто: распаковал в виртуальный каталог с запущенным приложением (просто в узел оно лезть почему-то не хочет), подключился браузером, прокликал настройки, вуа-ля! Особенно порадовало то, что в настроечном интерфейсе не забыли возможность хранения базы в локальном файле с подключением к серверу БД для его обработки. Это может быть очень удобно для разработки.

Но вот если порт какой-то ещё, и после установки сделать пару неправильных телодвижений, то скорее всего придется сбрасывать кучу внутренних настроек, а проще говоря — переустанавливать. Чтобы такого не было, надо:

  1. Подключиться к консоли localhost'а
  2. Зайти в раздел настроек системы под учетной записью host
  3. В разделе Portal Aliases добавить все те имена и адреса, по которым будут обращаться к системе с включением имени виртуального каталога (по дефолту прописано только localhost/имя_директории). Это могут быть имя_машины/dnn, имя_машины:порт/dnn, localhost:порт/dnn, ip:порт/dnn и т.п. Причем на случай переноса системы (например, с разработчетского сервера на продуктивный или тестовый) лучше заранее прописать соответствующие имена. Как вариант, можно отредактировать таблицу Port_Alias в базе.
  4. В web.config включить настройку UsePortNumber. Она там заготовлена, надо только раскомментировать.

И до кучи почти классическая ситуация, связанная с установкой модулей. Наткнулся на этот баг ещё при установке. Возможна некорректная обработка установки модуля, в результате вылетает ошибка Thread was being aborted.

Как выяснил некий Эндрю Райер (в этой теме, внизу), проблема в том, что при копировании новых dll в каталог bin, приложение перезагружается (нормальное поведение ASP.NET). Каждому потоку даётся команда на завершение. Существует таймаут, за который потоки должны завершиться, иначе они отрубаются насильно. Получается, что установщик просто не успевал отработать и его гасили. Чтобы ситуацию исправить надо немного скорректировать узел httpRuntime:

<httpRuntime useFullyQualifiedRedirectUrl="true" maxRequestLength="8192" requestLengthDiskThreshold="8192" executionTimeout="6000" shutdownTimeout="300"/>

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


Комментарии

Добавить комментарий


(Отображает Gravatar)

  Country flag

biuquote
  • Комментарий
  • Предпросмотр
Loading