DotNetNuke 安装指南(更新PDF下载)
Charles Nurse
本文档中的信息,包括 URL 和其他 Internet Web 站点参考,如有变更,恕不另行通知。使用此文档的所有风险和使用此文档造成的一切后果,由使用者本人承担。
DotNetNuke. 和DotNetNuke logo 均系Perpetual Motion Interactive Systems 在美国及/或其他国家(或地区)的注册商标。
DotNetNuke安装指南 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003100320039003000370037003000300039000000F3
介绍 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003100320039003000370037003000310031000000F3
设置你的站点,准备安装 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003100320039003000370037003000310033000000F3
升级到DotNetNuke3.x 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003100320039003000370037003000310035000000F3
准备升级 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003100320039003000370037003000310037000000F3
安装 DotNetNuke4.x 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003100320039003000370037003000310039000000F3
使用哪个安装包? 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003100320039003000370037003000320031000000F3
使用或安装源码包 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003100320039003000370037003000320033000000F3
安装DotNetNuke 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003100320039003000370037003000320035000000F3
备份你的站点 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003100320039003000370037003000320037000000F3
配置升级到4.x版本的web.config 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003100320039003000370037003000320039000000F3
安装可选资源和模块 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003100320039003000370037003000330031000000F3
安装附加资源 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003100320039003000370037003000330033000000F3
找不到存储过程“dbo.GetPortals”( Could not find stored procedure 'dbo.GetPortals') 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F006300310032003900300037003700300033003700000000
模板示例 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F006300310032003900300037003700300033003900000000
错误和遗漏 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F006300310032003900300037003700300034003100000000
² 将现有的安装升级到DotNetNuke3.x
² 安装DotNetNuke4.x
² 升级一个现有的3.x或4.x安装
² 安装/创建一个新的Portals
² 安装资源
Ø 皮肤/容器
Ø 模块
Ø 语言包
² 自动升级-自动检测是否需要安装/升级,并自动安装或升级
² 安装模板-可以通过一个基于XML的模板来控制安装,包括主机设置,模块和Portals。
² DNNConfig文件-这个文件保存当前数据库的版本,这样可能避免每次App_Start时访问数据库
² 安装日期-指定是否为一次“新”的安装自动生成“新”键
² 新安装页面(Install.aspx)-这个页面在安装/升级过程中显示回馈信息
² 安装文件夹-此文件夹通过批量FTP来管理在文件系统中新资源的定位,并且通过安装包,批量安装这些资源。
DotNetNuke3.x中修改了这一过程,全新安装不必执行34个版本的脚本(如3.0.12),只需要执行2个脚本 DotNetNuke.Schema和DotNetNuke.Data。升级仍然执行剩余脚本。
1. 解压打包文件
² DotNetNuke_X.Y.Z_Install.zip-安装包-这个包里包含ascx,aspx文件,同时包含其它内容文件和编译后的程序集(dlls),但是,包里不包含VisaualBasic代码文件。如果你不想修改核心文件,请使用这个安装包。
² DotNetNuke_X.Y.Z_Source.zip-源码包-里面包含了核心DotNetNuke工程的所有相关文件,包括Visual Basic源文件。
虽然IIS(Internet Information Server)站点的默认位置是在 C:/Inetpub/wwwroot/...,但是如果在本地intranet上配置,你可以将站点放在任何位置(如:C:/DotNetNuke)。
2. 配置IIS
在企业管理器(SQL Server2000)中,你可以通过在“数据库”上右击,并选择“新建数据库…”来创建一个新数据库。
这一过程在SQL Server Managerment Studio(SQL Server 2005)中更加简单。右击Databases并选择“New Database”。
² 在 Windows2000/IIS5中的帐户是(Server)/ASPNET帐户,
² 在Windows2003/IIS5中的帐户是NT AUTHORITY/NETWORK SERVICE帐户
Ø DesktopModules目录-写入,修改权限(允许文件管理器访问皮肤/容器)
Ø 如果你还想安装语言包,那么你必须对根目录下的所有子文件夹有写入和修改权限
Ø Configuring web.config for Installation
<add key="SiteSqlServer" value="Server=(local);Database=DotNetNuke;uid=;pwd=;" />
<add key="MachineValidationKey" value="F9D1A2D3E1D3E2F7B3D9F90FF3965ABDAC304902" />
<add key="MachineDecryptionKey" value="F9D1A2D3E1D3E2F7B3D9F90FF3965ABDAC304902F8D923AC" />
<add key="MachineValidationMode" value="SHA1" />
<add key="InstallTemplate" value="DotNetNuke.install.resources" />
<add key=”AutoUpgrade" value="true" />
<add key="UseDnnConfig" value="true"/>
<add key=”InstallMemberRole” value=”true” />
<!-- Show missing translation keys (for development use) -->
<add key="ShowMissingKeys" value="false" />
<add key="EnableWebFarmSupport" value="false" />
<add key="EnableCachePersistence" value="false" />
第一个设置(“SiteSqlServer”)定义程序使用的数据库(例如:<add key="SiteSqlServer" value="Server=(local); Database=DotNetNuke; uid=;pwd=;" />)。使用你所用的数据库的相应的值来替换Server,Databse,uid和password的值。如果是共享主机,主机提供者会提供这些值。在本机上安装,你一般不需要修改Server的值。然而,在某些情况下,你可能需要把Server的值改成你的本地计算机名。
第三个设置(”Auto Upgrade”)指示是否自动执行安装/升级过程。默认值为true。不管怎么设置DotNetNuke都将检测当前的数据库和程序集版本,如果版本不同,则重定向到安装页面。如果这一项设置为true,那么将自动执行安装或升级处理。如果设置为false,安装页面将报告版本差异,然后停止。
第五个设置(“InstallMemeberRole”)随意安装MemberRols provider脚本。由于这些脚本需要设置更高一级的工SQL Server权限,可能一些主机提供者不允许运行这些脚本。如果他们不提供这种权限,那么,在你安装DotNetNuke这前,你要先要求主机提供者执行这些脚本。而且,如果和你其它使用MemberRole provider的程序(例如:Community Server)使用共享数据库,那么,如果其它程序已经安装了,你就不必再重新运行这些脚本了。
<data defaultProvider="SqlDataProvider">
type="DotNetNuke.Data.SqlDataProvider, DotNetNuke.SqlDataProvider"
objectQualifier=""
databaseOwner="dbo" />
Ø db_datareader(dotnetnuke必须)
Ø db_datawriter(dotnetnuke必须)
Ø db_ddladmin(MemberRoles必须)
Ø db_securityadimin(MemberRoles安装过程需要)
以上两个设置仅与默认的MS SQL Server Data Provider相关。如果你使用其它data provider,你必须参照这个provider的文档来作相应的配置。
Navigation Provider设置
<navigationControl defaultProvider="SolpartMenuNavigationProvider">
<add name="SolpartMenuNavigationProvider"
<add name="DNNMenuNavigationProvider"
<add name="DNNTreeNavigationProvider"
<add name="DNNDropDownNavigationProvider"
</navigationControl>
<membership userIsOnlineTimeWindow="15">
<add name="DNNSQLMembershipProvider"
enablePasswordRetrieval="true"
enablePasswordReset="true"
description="Stores and retrieves membership data from the local Microsoft
SQL Server database" />
cacheRolesInCookie="true"
cookieName=".ASPXROLES"
cookieTimeout="30"
createPersistentCookie="false"
cookieProtection="All">
<add name="DNNSQLRoleProvider"
type="DotNetNuke.Security.Role.DNNSQLRoleProvider, DNNSQLRoleProvider"
description="Stores and retrieves roles data from the local Microsoft SQLServer database" />
</roleManager>
<profile enabled="true">
<add name="AspNetSqlProvider"
description="Stores and retrieves profile data from the local Microsoft SQL Server database" />
<add name="FirstName" type="string" allowAnonymous="true" />
<add name="LastName" type="string" allowAnonymous="true" />
<add name="Unit" type="string" allowAnonymous="true" />
<add name="Street" type="string" allowAnonymous="true" />
<add name="City" type="string" allowAnonymous="true" />
<add name="Region" type="string" allowAnonymous="true" />
<add name="PostalCode" type="string" allowAnonymous="true" />
<add name="Country" type="string" allowAnonymous="true" />
<add name="Telephone" type="string" allowAnonymous="true" />
<add name="Fax" type="string" allowAnonymous="true" />
<add name="Cell" type="string" allowAnonymous="true" />
<add name="Website" type="string" allowAnonymous="true" />
<add name="IM" type="string" allowAnonymous="true" />
<add name="TimeZone" type="integer" allowAnonymous="true" />
<add name="PreferredLocale" type="string" allowAnonymous="true" />
enabled="true"
cookieName=".ASPXANONYMOUS"
cookieTimeout="100000"
cookieProtection="None"
domain="" />
</memberrolesprototype>
minRequiredPasswordLength-控制密码的最小长度。Web.config中的默认配置是4,这是因为一直一来默认的超级用户使用host/host作为用户名和密码。要增加默认值,需要修改安装模板中位于<superuser>和<administrator>节点的的passwords provider。
如果DotNetNuke3.2以Medium Trust运行于.NET2.0,你需要在web.config的所有配置节中添加一个属性设置,如下所示。如果在.NET1.1环境下运行,则不需要设置这个属性(实际上会造成错误)
<configSections>
<sectionGroup name="dotnetnuke">
<section name="data" requirePermission="false"
type="DotNetNuke.Framework.Providers.ProviderConfigurationHandler, DotNetNuke"/>
<section name="logging" requirePermission="false"
type="DotNetNuke.Framework.Providers.ProviderConfigurationHandler, DotNetNuke"/>
<section name="scheduling" requirePermission="false"
type="DotNetNuke.Framework.Providers.ProviderConfigurationHandler, DotNetNuke"/>
<section name="htmlEditor" requirePermission="false"
type="DotNetNuke.Framework.Providers.ProviderConfigurationHandler, DotNetNuke"/>
<section name="navigationControl" requirePermission="false"
type="DotNetNuke.Framework.Providers.ProviderConfigurationHandler, DotNetNuke"/>
<section name="searchIndex" requirePermission="false"
type="DotNetNuke.Framework.Providers.ProviderConfigurationHandler, DotNetNuke"/>
<section name="searchDataStore" requirePermission="false"
type="DotNetNuke.Framework.Providers.ProviderConfigurationHandler, DotNetNuke"/>
<section name="friendlyUrl" requirePermission="false"
type="DotNetNuke.Framework.Providers.ProviderConfigurationHandler, DotNetNuke"/>
<section name="caching" requirePermission="false"
type="DotNetNuke.Framework.Providers.ProviderConfigurationHandler, DotNetNuke"/>
<section name="authentication" requirePermission="false"
type="DotNetNuke.Framework.Providers.ProviderConfigurationHandler, DotNetNuke"/>
</sectionGroup>
<sectionGroup name="memberrolesprototype">
type="Microsoft.ScalableHosting.Configuration.MembershipConfigHandler, MemberRole,Version=1.0.0.0, Culture=neutral, PublicKeyToken=b7c773fb104e7562" />
<section name="roleManager" requirePermission="false"
type="Microsoft.ScalableHosting.Configuration.RolesConfigHandler, MemberRole,Version=1.0.0.0, Culture=neutral, PublicKeyToken=b7c773fb104e7562" />
type="Microsoft.ScalableHosting.Configuration.ProfileConfigHandler, MemberRole,Version=1.0.0.0, Culture=neutral, PublicKeyToken=b7c773fb104e7562" />
<section name="anonymousIdentification" requirePermission="false"
type="Microsoft.ScalableHosting.Configuration.AnonymousIdConfigHandler, MemberRole,Version=1.0.0.0, Culture=neutral, PublicKeyToken=b7c773fb104e7562" />
</configSections>
² 安装程序报告正被安装的的模板的版本,同时一个所需的额外脚本修正一些约束的默认名字。
² 安装程序报告已被执行的安装脚本。(被执行的用于新版本的新增脚本)
² 安装报告已执行MemberRole Provider所需的脚本,
² 然后解析安装模板的部分
u 主机设置
u 超级用户
² 然后模块被安装
² Portal被创建
² 可选资源被安装,例如:附加皮肤,容器
<add key="MachineValidationKey" value="F9D1A2D3E1D3E2F7B3D9F90FF3965ABDAC304902" />
<add key="MachineDecryptionKey" value="F9D1A2D3E1D3E2F7B3D9F90FF3965ABDAC304902F8D923AC" />
<add key="MachineValidationMode" value="SHA1" />
² 备份你现有的web.config文件(例如:web.backup.resources)。对于备份的重要性,我们已经强调的不能再强调了。如果你丢失了你的MackineKeys的初始,那么你所有的用户将都不能登陆。
² 在确认你已经安全的备份了你的web.config文件之后,将release.config重命名为web.config
² 把新的web.config中的下列键值替换成你的备份文件中的值
² 修改web.config中的其它内容,使之支持附加的providers等。
|
引入版本
|
从下列版本(或更早版本)升级
|
Navigation Provider 节
|
3.2.0
|
3.1.1
|
Caching Provider Section节
|
3.1.0
|
3.0.13
|
DBLoggingProvider节
|
3.1.0
|
3.0.13
|
² 安装程序报告将被安装的新的DotNetNuke版本(这里是:3.2.1)
² 安装程序报告当前的版本(这里是:3.1.1)
² 安装程序报告一系列被执行的增加脚本
² 安装程序报告主升级正被执行。
² 在这例子里没有的是,如果安装文件夹中包括任何可选资源(模块,皮肤,容器),它们将在升级的后期被安装。
DotNetNuke4.0是DotNetNuke第一个基于ASP.NET2.0的版本。虽然3.2版本可以运行于ASP.NET2,但是开发需要Visual Studio 2003和.NET1.1。
如同在许多ASP.NET相关的社区中讨论的,.NET2.0(和Visual Studio 2005)为开发和运行网站引入了一个不同的范例。我们的主要问题在于,在.NET2.0/Visual Studio2005中,地址不再是一个web工程。.NET2把一个网站的虚拟目录下的所有文件作为网站的一部分。
另外,Visual Studio 2005(VS2005)提供了更先进的工程和项目模板系统,在Express产品系列中也支持,也就是Visual Web Developer Express(VWD)。这一特征允许我们开发一个DotNetNuke Starter Kit,它能简化DotNetNuke的站点的创建。
² DotNetNuke_X.Y.Z_Install.zip-安装包-它包含了ascx,aspx等文件,也包含了已编译的程序集(dll文件),但不包含provider和httpModules的VisualBasic代码文件。
² DotNetNuke_X.Y.Z_Source.zip-源码包-它包含了所有的DotNetNuke工程的所有核心文件和Visual Basic源码文件。
² DotNetNuke_X.Y.Z_StarterKit.vsi-Vistual Studio 2005安装包-它包含一个工程模板(基于安装包),一个模块项目模板(包括Visual Basic.NET的C#),和一个皮肤项目模板。支持类库,providers和HttpModules以预编译形式提供(dll)
要决定使用哪个包,你应该首先确定你的开发环境。因为Visual Web Developer Express(VWD)不支持除网站工程这外的其它工程类型。因此,如果你希望在VWD而不是Visual Studio2005(VS2005)中工作,那么你将不能使用源码包。
1. 安装Starter Kit
要想使用Starter Kit,首先要安装它。如果你已经安装了VS2005或VWD,你才能安装它。
要安装Starter Kit,在Windows资源管理器中双击这个文件。Visual Studio 内容安装将启动,如下图:
2. 从工程模板创建一个DotNetNuke站点
一旦你安装了模板,你就可以创建一个新的DotNetNuke工程了。在VS2005或VWD中从文件菜单中选择New Website…
选择DotNetNuke模板,在Location中选择File System或HTTP,然后在文本框中输入名字。上面的例子中,我们选择File System选项,这样将使用VS2005/VWD在基于WebServer的文件系统中创建,命名站点-”DotNetNuke Website 1”
1. 解压包
² 创建一个应用程序运行的目录(例如: C:/DotNetNuke_2)
² 如果你使用安装包
i. 创建一个名为Website的子目录
ii. 把安装包解压解压到你刚创建的子目录。
2. 配置IIS(Internet信息服务器)
在本地intranet配置,在IIS中创创建一个名为DotNetNuke_2r 虚拟目录,指向上面提到的相应的物理目录
因此,这里我们只专注于3.x和4.x版本这间的差别内容。对于DotNetNuke中特殊的web.config设置,请参考“安装DotNetNuke 3.x版本”一章。
1. 除了要有3.x版本在<appSettings>中的connectionString设置这外,在DotNetNuke4.x中还需要在<connectionString>节设置相同的连接字符串。
<!-- Connection String for SQL Server 2005 Express -->
connectionString="Data Source=./SQLExpress;Integrated Security=True;UserInstance=True;AttachDBFilename=|DataDirectory|Database.mdf;"
providerName="System.Data.SqlClient" />
</connectionStrings>
2. 以前在<appSettings>配置节中的machine key设置―MachineValidationKey,MachineDecryptionKey和MachineValidationMode―现在位于<system.web>中的<machineKey>中。
3. 成员权限设置本身没有变化,但是它的位置从原来的<memberolesprototype>移动到<system.web>节点。如果想更多修改这一设置,请阅读“安装DotNetNuke3.x”一章中的详细介绍。
validation="SHA1"/>
1. 解压Install.zip包覆盖你现有的版本。
² 备份原来的web.config文件(例如:web.backup.resources)。备份的重要性已经强调的不能在强调了。如果你丢失了原始听MachineKeys,那么,你所有的用户将不能登陆。
² 在你确认安全的备份了你的web.config文件之后,把release.config改名为web.config
² 使用备份中的内容替换新的web.config文件中的下列键:
² 把旧的web.config中的的<connectionStrings>内容拷贝过来。
connectionString="???????"
providerName="System.Data.SqlClient" />
² 设置以前在appSettings节点的的machineKey元素的值:
validation="SHA1"/>
² 继续配置web.config,以支持其它的provider
象语言包,皮肤,保护性程序集这样的可选资源,也可以在在安装过程中被自动安装。在/Install文件夹下面有六个文件夹:Container, Language, Module, Portal, Skin 和 Template。不同的资源的zip包(后面将详细描述)被放置在相应的文件夹,安装程序将自动安装它们。
<portalname>DotNetNuke Personal Site</portalname>
<administrator>
</administrator>
<description>Default Personal Site</description>
<keywords>Default, DotNetNuke, CMS, Web, Future</keywords>
<templatefile>Personal Site.template</templatefile>
<portalname>DotNetNuke Club Site</portalname>
<administrator>
</administrator>
<description>Default DotNetnuke Club Site</description>
<keywords>Default, DotNetNuke, CMS, Web, Future</keywords>
<templatefile>Club or Organization Site.template</templatefile>
</dotnetnuke>
1. 使用”Install Resources”这个scheduled事件。
2. 使用下面的Url手动浏览安装页面“Install/Install.aspx?mode=AddPortal”
² 通过程序Host/Module Definitions用户界面,从Action菜单或控件的链接按钮中,选择“Upload New Module”
² 通过安装程序把zip文件放到/Install/Module
² 模块的开发和打包在“DotNetNuke Module开发指南中”叙述
² 在Host或Admin菜单中的Skins菜单项,打开程序界面,选择“Upload Container”或“Upload Skin”
² 通过安装程序把zip文件放入/Install/Skin或/Install/Container目录
² 皮肤/容器的开发和打包的说明在“DotNetNuke 皮肤”文档中
² 通过Host/Languages打开程序界面,选择“Upload Language Pack”
² 使用安装程序把zip文件放入/Install/Language目录
² <description>子节点
² <scripts>子节点
² <version>子节点
² <superuser>子节点
关于superuser(host 帐户)的信息,后面再讨论
² <settings>子节点
² <desktopmodules>子节点
要安装的desktop modules-稍后讨论
² <portals>子节点
² <script name=”xxx”>子节点
² <firstname>子节点
超级用户的名(first name)
² <lastname>子节点
超级用户的姓(last name)
² <username>子节点
² <password>子节点
² <email>子节点
² <locale>子节点
² <timezone>子节点
<portals> 节点
² <portalname>子节点
² <administrator>子节点
² <description>子节点
² <keywords>子节点
² <templatefile>子节点
² <homedirectory>子节点
² <portalaliases><portalalias>子节点
² <ischild>子节点
<description>This is the default DotNetNuke Host Installation Template</description>
<script name="Setup">DotNetNuke.SetUp.SqlDataProvider</script>
<script name="Schema">DotNetNuke.Schema.SqlDataProvider</script>
<script name="Data">DotNetNuke.Data.SqlDataProvider</script>
<timezone>0</timezone>
<DisableUsersOnline>Y</DisableUsersOnline>
<EncryptionKey Secure="True"></EncryptionKey>
<PerformanceSetting>3</PerformanceSetting>
<ProcessorPassword Secure="True"></ProcessorPassword>
<ProcessorUserId Secure="True"></ProcessorUserId>
<ProxyPassword Secure="True"></ProxyPassword>
<ProxyServer></ProxyServer>
<ProxyUsername Secure="True"></ProxyUsername>
<SMTPAuthentication></SMTPAuthentication>
<SMTPUsername Secure="True"></SMTPUsername>
<SMTPPassword Secure="True"></SMTPPassword>
<portalname>DotNetNuke Default Portal</portalname>
<administrator>
</administrator>
<description>Default DotNetnuke Portal</description>
<keywords>Default, DotNetNuke, CMS, Web, Future</keywords>
</dotnetnuke>
版本
|
最新更新
|
作者
|
修改
|
1.0.0
|
2005年3月
|
Charles Nurse
|
最初的3.0安装指南
|
1.0.1
|
2005年6月
|
Charles Nurse
|
更新到3.1.0版本
|
1.0.2
|
2005年8月16日
|
Shaun Walker
|
使用新模板
|
1.0.3
|
2005年11月22日
|
Charles Nurse
|
更新到 3.2/4.0版本
|