DotNetNuke 4.0.0インストールの注意点

インストール手順は以前にも書いたので、そちらを参照してください。
ちなみに、version. 4.0.1が公開されてますね。
今から始める方は最新モジュールでのインストールをお勧めします。

【技術メモ】 DotNetNuke 4.0.0インストール
http://www.takakuro.net/blogs/nagile/archive/2005/11/24/210.aspx

インストールにはいろいろ落とし穴があったので、
私がはまったところを注意点としてまとめておきます。

■ web.configの接続文字列
最低限、下記の2箇所正しく設定する必要があります。

connectionStrings/add[@name="DotNetNuke"]
DotNetNuke自身が利用するDBの接続文字列です。
この接続情報が正しく無いとインストールがうまくいきません。

appSettings/add[@key="DotNetNuke"]
一部のレガシィモジュールが利用するDBの接続文字列だそうです。
インストールには影響ないですけど、モジュールの実行でエラーが発生します。
レガシィとかいいつつほとんどのモジュールが動かないので、
今の時点では必須なんでしょうね。

■ インストールには必ず新しく展開したファイルを使う
DotNetNuke_4.0.0_Install.zipを使ってインストールを行う場合、
この圧縮ファイルをローカルPCに展開して、
インストールを実行すると思いますが、例えばどっかで一度インストールした
ファイルを別のPCで流用しようとすると失敗します。

DBだけ空にしとけばいいじゃん、と思うとこですが、
インストール時に新しくファイルやフォルダを作成するので、
そのゴミが残った状態ではうまくインストールが動きません。
特に、DNNのインストーラはInstall\Moduleフォルダ内にある
各圧縮ファイルをインストール時にDesktopModulesフォルダに展開し、
圧縮ファイルを削除します。それを知らずに再インストールしてたら
標準のモジュールがインストールされない。。。という事態になっちゃいます。
あ、俺のことですね。。。(^^;;

web.configだけはバックアップすることをお忘れなく。

■ 再インストールするときは必ず最初から
インストールが中途半端で失敗して、DBにゴミが残ってしまった場合、
テーブル、ビュー、ストアドプロシージャを削除することをお勧めします。
DNNのテーブルスキーマはかなり複雑に依存してるので、
テーブル内のデータを修正して再インストールしようとするとハマります。

私は、自分でdropSQL文を書いて削除しちゃいましたが、
Providers\DataProviders\SqlDataProviderフォルダ内にSQL文があるので、
UnInstall.SqlDataProviderファイルを利用すれば
関係するDBオブジェクトを削除できると思います。
その際、ファイル内の{databaseOwner}と{objectQualifier}の文字列を
置換することをお忘れなく。

可能であれば、インストール前にDBのバックアップを取っておき、
インストールに失敗したらバックアップファイルからリストアする、
のが理想だと思います。

■ そうは言っても楽して再インストールしたい方は
全てのファイルをアップロードしなおすのは面倒くさいので、
私が実際にやったやり方をメモっときます。

  • DB内のDNN関連のテーブル、ビュー、ストプロを全削除
  • DesktopModulesフォルダを削除
  • Install\Moduleフォルダ内の圧縮ファイルを再度アップロード
    (一度インストールを実行すると圧縮ファイルは削除されます)
  • Portalsフォルダ内の数字のフォルダを全て削除
    (_defaultフォルダは削除しないでね)

モジュールは、一度DNNをインストールしてから
手動でアップロードしなおすことが可能なので、
あまり気にしなくてもいいでしょうね。

■ インストール後のパスワード変更
インストールが完了したら、スーパーユーザ「host」とポータル管理者「admin」の
パスワードを変更することをお忘れなく。
インストールのテンプレートでデフォルトのパスワードを指定できますが、
何故か「host」のパスワードだけはテンプレートで指定したパスワードに
変更されていませんでした(バグ?)

 

注意事項は以上です。
DotNetNukeはなかなか奥が深いですね〜。
本も注文したので、これからも色々調べてみようと思います。