在云中托管应用程序是一种常见的做法,因为它的易用性和性能是小型组织自己可能没有的。为什么不在云中托管DNN ?如果你遵循我们的指南,你可以在几分钟内启动并运行微软的Azure Web应用程序。
DNN图像
到目前为止,微软Azure的DNN镜像已经过时了,只有DNN的第7版,虽然使用它来启动和运行可能很诱人,但我不推荐它,因为你会遇到麻烦。在撰写本文时,DNN是9.2.1,当我安装DNN的新实例时,我总是使用最新版本来获得最新和最好的功能,包括安全更新。
有哪些选择?
Microsoft Azure为此支持两种类型的安装:
虚拟机
虚拟机方法迫使您管理Windows Server实例和已安装的任何工具。Azure不会为你处理任何事情,在我看来,你真的不会从中得到很多好处,尤其是在虚拟机的价格点上。
如果您选择使用虚拟机路线,需要记住一些事情,您需要将以下项目安装到您的机器上,并为每个项目获得适当的许可证:
- IIS
- Microsoft SQL Server
- 默认Windows Server映像上没有的任何安全补丁或常规热修复程序
Web应用程序和Azure SQL
Web应用程序是管理Azure中部署的应用程序的一种简单方法,因为它们为您管理底层虚拟机并使其保持最新状态。你只需要担心部署你的软件。
同样的概念也适用于Azure SQL,你不需要管理你的Microsoft SQL Server许可证,安装它或使它保持最新。Azure为您处理所有这些,您所需要做的就是担心SQL连接字符串。
这是一个非常短暂的Azure Web应用程序和Azure SQL的描述,如果您想了解更多有关它们的信息,请参阅微软文档
开始
让我们开始吧,这真的应该只需要你5-15分钟来配置所有的东西+无论DNN的安装需要多长时间。我们需要在Azure中创建2个资源才能使其正常工作。
- SQL Azure
- Azure Web应用
配置Azure SQL
我们开始吧,去Azure门户我们可以从添加一个新资源开始。
- 找到“创建资源”按钮

- 搜寻“SQL资料库”
- 找到SQL数据库后,选择它并点击信息刀片上的Create按钮

此时将出现SQL Database配置刀片,您可以开始填写所需的信息。

在正确创建SQL数据库之前,我们需要配置服务器和定价层。通过选择每个刀片,您将有更多需要填写的配置选项。
我选择在本文中创建一个新的SQL Server。请确保您写下或记住您的服务器管理员登录名,因为您将在稍后运行DNN安装时需要它

一旦你创建了你的服务器,你可以继续并指定你的定价层。当我开始使用一个新的SQL Server时,我总是从最基本的级别开始,直到我需要扩展。
下面是点击创建按钮之前的最终SQL数据库配置

现在我们都设置好了,可以点击create按钮了。Azure将开始为您创建必要的资源,在我们的情况下,将有2个项目:
- Azure SQL Server
- Azure SQL数据库
在创建资源的同时,我们可以继续创建Web应用程序
配置Azure Web应用
我们现在需要创建一个资源,它将包含我们的DNN安装的Web应用程序代码。换句话说,就是安装DNN网站的地方。这将是Azure Web应用程序,一旦我们配置它,我们可以很容易地通过ftp复制任何DNN安装文件。让我们从登录到Azure门户如果您还没有登录
- 再次找到创建资源按钮

- 搜寻“网页应用程式”
- 信息刀片应该是这样的

- 点击Create按钮
现在你将被带到Web应用程序配置刀片,这是稍微容易从SQL Server填写。下面是我们如何填写demo的:

注意以下重要属性:
- 操作系统-这必须是Windows,因为DNN只在Windows上工作
- 应用程序服务计划-您需要配置您的服务计划,我们使用的是免费计划
点击创建按钮后,它将开始创建Web应用程序资源。
将DNN文件传输到Azure Web应用程序
我们还没有在Azure中完成Web应用程序的配置,因为它对DNN一无所知,它只知道它是一个等待接受一些代码运行的Web应用程序。我们先去DNN GitHub仓库发布并下载最新的“_install.zip”版本。这包含了正确安装DNN所需的安装程序代码。
一旦你让安装程序返回到Azure仪表板并找到你刚刚创建的Web应用程序,此时它应该可以使用了。首先,我们需要配置FTP/部署凭据。搜索部署凭据并打开刀片:

输入您想要的用户名和密码,然后单击保存按钮

现在我们可以打开我们选择的FTP客户端并复制我们需要的文件。回到Web App Overview Blade,你会看到关于访问FTP服务器的信息。在我们的例子中是
用户名:“dnn-on-azure \ andrew-dnn-sample”
主持人:“ftp://waws -刺激bn1 - 029. ftp.azurewebsites.windows.net”
连接后,您需要导航到“site/wwwroot”文件夹。这就是您将DNN安装代码复制到的位置。我使用FileZilla但请随意使用您最喜欢的FTP客户端。我们需要解压缩_install.zip文件,然后将文件的内容复制到wwwroot文件夹中。
在复制所有内容之前,您可能需要删除hostingstart.html文件。最好的做法是在复制任何网站代码之前清理这个目录。
一旦一切都已成功复制过来,我们可以开始安装过程!
执行DNN安装
现在一切都配置好了,我们准备开始我们的DNN安装。我希望您随身携带SQL Server凭据,因为我们将需要它来完成安装。让我们从导航到您的Azure网站URL开始,该URL可以在Web应用概览刀片中找到。在我们的例子中是https://dnn-on-azure.azurewebsites.net
您应该看到标准的DNN安装屏幕,像往常一样填写它。只要确保填写SQL Server连接即可。
当您填写标准DNN安装时,请确保为您的数据库类型勾选“SQL Server/SQL Server Express Database”。您将从Azure中的SQL数据库服务器概览刀片中找到服务器名称。下面是我们为安装输入的信息:
- 服务器名称-“tcp:dnn-server.database.windows.net,1433”
- 数据库名称- "new-dnn"
- 数据库用户名-“app”

准备好之后,继续并单击Continue按钮开始安装。这将在安装DNN时将您带到标准安装进度屏幕。在本文的演练中,我们选择使用Azure SQL server基本定价层,它速度较慢,特别是在安装过程中发生大量SQL写入时。这可能需要多比你习惯的时间长。您总是可以在安装期间扩展Azure SQL Server并在安装之后缩小它,但这超出了本演练的范围。我花了7:39分钟完成安装。
一旦安装完成,你将有DNN运行在微软Azure云!
结论
如果你避开了这些陷阱,那么在微软Azure云中使用DNN并不是那么困难。一旦它启动并运行,您就可以获得DNN在云中托管的所有好处。
原载于https://www.andrewhoefling.com/Home/post/dnn-as-an-azure-web-app