65.9K
CodeProject 正在变化。 阅读更多。
Home

在 Windows XP Home 或任何其他缺少 IIS 的系统上运行 DotNetNuke 4.0.2

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.78/5 (12投票s)

2006年1月20日

4分钟阅读

viewsIcon

152414

本文介绍了如何在 UltiDev Cassini Web 服务器上运行 DotNetNuke 内容管理系统。与 IIS 不同,Cassini 可以运行在 Windows XP Home 上,并且可以与 DotNetNuke 应用程序一起重新分发。

必备组件

成功完成此演练需要以下组件
- 任何版本的 Windows XP 或 Windows Server 2003。
- .NET Framework 2.0
- UltiDev Cassini Web 服务器 2.0
- SQL Server 2005 – 完全版或 Express
- SQL Server Management Studio – 完全版或 Express
- DotNetNuke 4.0.2 安装包

本文假定读者能够执行基本的 SQL Server 2005 管理操作,例如安装 SQL Server 和创建新数据库。

引言

如果您计划在无法运行 IIS 的系统(如 Windows XP Home)上运行您的 DotNetNuke 应用程序,或者您的客户不具备安装和维护 IIS 所需的技能,您应该考虑将您的基于 DNN 的应用程序与 UltiDev Cassini Web Server 一起分发。这是一款小型可再分发的 Web 服务器,无需 IIS 即可运行 ASP.NET 应用程序。

有关如何创建包含 UltiDev Cassini Web Server 的 ASP.NET 应用程序可再分发包的说明,请参考 此 CodeProject 文章,或 UltiDev Cassini 开发者指南。本次演练的大部分内容都与安装 DotNetNuke 本身有关,包括创建其数据库并在其 web.config 文件中指定正确的连接字符串。一旦完成这些步骤,注册 DNN 与 Cassini 服务器并运行应用程序就变得非常简单了。

好了,我们开始动手吧。为了简单起见,我们将把作为 DNN 底层的 SQL Server 2005 放在与 DNN 运行在同一台机器上。如果您有安装和配置 DNN 的经验,请按照您自己的方式安装 DNN,跳过第一部分,直接进入第二部分。


第一部分 - DotNetNuke 安装。

本部分只是一个直接的 DNN 安装,与在 Cassini 上运行无关。如果您知道如何安装 DNN,请安装好后直接跳到第二部分。

  1. 下载 DotNetNuke 4.0.2 安装包。将 ZIP 文件解压缩到 C:\DNN 文件夹。
  2. 导航到 C:\DNN 文件夹,将 release.config 文件复制为 web.config。
  3. 如果您没有安装 SQL Server 2005,请 下载并安装 SQL Server 2005 Express 及其管理控制台 – SQL Server Management Studio。在安装 SQL Server Express 时接受所有默认设置。(如果您在此机器或其他机器上安装了 SQL Server 2000 或 2005,并且知道如何使用它,那么只需在其上创建一个新数据库并命名为 DotNetNuke。然后您可以跳过有关如何创建数据库和格式化 ASP.NET 应用程序连接字符串的步骤)
  4. 使用 SQL Server Management Studio 连接到您刚刚安装的 SQL Server Express。连接成功后,创建一个新数据库
    New database creation using SQL Management Studio

    …将其命名为 DotNetNuke,并将 sa 或其他高权限的 SQL 登录设置为数据库的所有者
    Creating DotNetNuke Database On SQL Server 2005
    …点击确定。
  5. 导航到 DNN 的数据库用户,将 dbo 设置为数据库的所有者,方法是双击 dbo 用户
    dbo login of DotNetNuke database

    …然后添加 db_owner 架构到 dbo 所拥有的架构集合中
    db_owner schema applied to dbo login for DotNetNuke database
    点击“确定”。
  6. 修改 C:\DNN 文件夹中的 web.config 文件,将连接字符串值替换为指向新创建的数据库。连接字符串应为“Data Source=.\SQLEXPRESS;Initial Catalog=DotNetNuke;Integrated Security=True”。编辑 web.config 文件使其如下所示:


    <connectionStrings>
    <!-- SQL Server 2005 Express 连接字符串 -->

    <add name="SiteSqlServer"
    connectionString="Data Source=.\SQLEXPRESS;Initial Catalog=DotNetNuke;Integrated Security=True;"

    <appSettings>
    <!-- SQL Server 2005 Express 连接字符串 - 保留用于向后兼容 - 旧模块 -->
    <add key="SiteSqlServer" value="Data Source=.\SQLEXPRESS;Initial Catalog=DotNetNuke;Integrated Security=True;"/>

第二部分 – 在 UltiDev Cassini 上运行 DotNetNuke。

  1. 下载并安装 UltiDev Cassini Web 服务器 2.0
  2. 从“开始”|“所有程序”|“UltiDev”|“Cassini ASP.NET 服务器”启动 Cassini Explorer 工具,将 DotNetNuke 应用程序注册到服务器。
  3. 填写下方高亮显示的表单字段,然后点击“Generate”按钮。
    重要提示在首次运行 DNN 之前,请务必取消选中“Always keep application in memory”(始终将应用程序保留在内存中)复选框。否则 DNN 将无法正确安装,您将不得不删除 DNN 应用程序文件,删除数据库并从头开始!
    Registering DotNetNuke application with Ultidev Cassini Web Server - Step 1
  4. 点击“Save”按钮
    Registering DotNetNuke with UltiDev Cassini Webserver - Step 2
  5. 点击此链接启动在 Cassini 下运行的 DotNetNuke
    Cassini Explorer displaying DotNetNuke as a registered Cassini application
  6. voici:DotNetNuke 在 Cassini 上运行
    DotNetNuke running on UltiDev Cassini webserver - Initialization

    DNN 完成初始化后,滚动浏览器窗口向下,然后启动 DNN
    DotNetNuke running on UltiDev Cassini Web Server - Initialization Complete

    享受 Cassini 上的 DNN
    DotNetNuke up and runnign on UltiDev Cassini Web Server

为了提高 DNN 首次加载页面的响应时间,您可能希望阻止 DNN 被 ASP.NET 卸载。为此,请返回 Cassini Explorer,编辑 DNN 的应用程序设置,然后选中“Always keep application in memory”(始终将应用程序保留在内存中)复选框,并保存配置。在 DNN 完成初始化之后执行此操作很重要,因此请先在浏览器中运行 DNN,然后再更改“keep application in memory”(将应用程序保留在内存中)标志。

如果您想深入了解,请查找如何 调试和分发 任何 ASP.NET 应用程序,包括基于 DotNetNuke 的应用程序,使用 UltiDev Cassini。

更新

最近的 DotNetNuke 4.3.x 版本比 DNN 4.0.x 更容易安装和在 UltiDev Cassini 下运行。它不需要提前创建数据库,也不需要更改 web.config 中的连接字符串。只需下载 DNN,解压缩,使用 UltiDev Cassini Web Server 注册它,然后从 Cassini Explorer 运行它。甚至不需要下载 SQL Server Management Studio。

Vlad Hrybok,

UltiDev LLC

© . All rights reserved.