DotNetNuke(DNN)网站发布、部署、迁移和重建

简介: DotNetNuke(DNN)网站本质上是一个ASP.NET网站,由网站文件(也就是website目录)和数据库组成的,所以,“发布、部署、迁移和重建”实际上也就是把网站文件和数据库文件拷贝到服务器上并修改相应设置的过程。
DotNetNuke(DNN)网站本质上是一个ASP.NET网站,由网站文件(也就是website目录)和数据库组成的,所以,“发布、部署、迁移和重建”实际上也就是把网站文件和数据库文件拷贝到服务器上并修改相应设置的过程。
对于"发布和部署“,我指的是你开发了一个DNN网站,需要放到租用的虚拟主机或者客户的局域网的服务器里。对于”迁移“,我指的是有时侯你需要把一个DNN站点从一个租用空间搬到另一个租用空间,或者从一个服务器搬到另一个服务器。有一种”迁移“的特殊情况,那就是”重建“,有时你从别人那里接手一个DNN网站,或者你拿到一个DNN网站整站程序,你需要把这个网站重新架起来。

各自的特点:

发布和部署

  • 你需要把代码源文件(如.vb,.cs)去掉
  • 你对所有的方面完全了解,并有绝对控制权

迁移

  • 源文件已经去掉,或者不用考虑这方面的事情,因为之前已在运行。
  • 你了解网站之前的设置情况,包括使用什么模块,有多少子站,子站的别名是什么,数据库连接是什么等等。

重建

  • 你对手里的网站完全陌生,不知有多少子站,不知到别名的设置,不知道使用了什么模块,不知道如何连接的数据库。

操作过程:

发布和部署

  1. 添加一个发布时使用的别名。因为部署到服务器上后,一般访问网站的URL地址会发生变化。比如你在本地一直是用http://localhost调试的,发布后,应该使用http://www.domainname.com访问。因为DNN的“别名”机制,如果你在部署之前没有添加相应的“别名”,那么在部署之后你就没有办法立即用http://www.domainname.com访问到你部署的网站。
  2. 将网站文件拷贝到服务器上,并在IIS中新建一个网站指向这个目录,设置主机头。注意,不要再把DNN放到虚拟目录下,应该放到网站根目录。
  3. 把数据库拷贝到数据库服务器上(一般是SQL),你可以使用“dettach"和"attach",使用"backup"和"restore",使用SQL Script直接重建等等方法。
  4. 修改web.config文件,使其指向发布环境中的数据库。
  5. 检查IIS的各项设置。并确认ASP.NET的版本正确,DNN 3.x是ASP.NET 1.0,DNN 4.x是ASP.NET 2.0

部署到单位内部局域网主机上实际是很简单的,按上述几条进行就可以了。

部署到虚拟主机上会相对麻烦一点,最主要的障碍是虚拟主机给你的自由度更小。很多东西你可能无法直接修改,甚至包括重要的web.config文件。但基本的原理还是一样的,也就是“网站文件和数据库文件拷贝到服务器上并修改相应设置的过程”,你仔细阅读虚拟主机提供商的说明,尽量地修改各种设置。并且可以考虑寻找专门的DNN网站虚拟主机提供商。 一定要注意的是第一步,如果你没有添加相应的“别名”,到时候你可能完全无法访问自己发布的网站,因为你不可能跟局域网里的机器一样可以通http://localhost这种方式去访问虚拟主机上的网站,所以一定要先加一个“别名”。

迁移

迁移相对简单,因为大部分东西都没有变化,按照发布和部署的步骤造作就可以了。

重建

因为你完全不了解手里的这个网站,你应该先通过查看数据库中的内容来了解这个网站。
  • 通过PortalAlias表来了解别名的情况。

目录
相关文章
|
SQL 机器学习/深度学习
如何删除DNN网站中管理菜单中的一些项
有些时候,我们想删除DNN菜单中的某一些项,比如删除"Site Wizard" 可以使用如下SQL语句: DELETE FROM {databaseOwner}{objectQualifier}Tabs WHERE TabPath='//Admin//Site Wizard' 删除其它项照搬格式就可以了,注意中间的空格。
527 0
|
6月前
|
机器学习/深度学习 算法 PyTorch
OpenCV-图像着色(采用DNN模块导入深度学习模型)
OpenCV-图像着色(采用DNN模块导入深度学习模型)
来自OpenCv的DNN模块助力图像分类任务
来自OpenCv的DNN模块助力图像分类任务
132 0
来自OpenCv的DNN模块助力图像分类任务
|
机器学习/深度学习 数据库 SQL
|
机器学习/深度学习
DNN 模块MVP 模式学习中的一些问题
为了让View部分可以测试,我们使用interface来分离View和业务逻辑的耦合。 我的问题是: Q:对于在aspx.design.cs中声明的控件,我们也需要在interface中声明吗?如果要声明,那么在aspx.design.cs中的控件声明是不是就是interface的实现? 我们不能在interface直接声明跟aspx.design.cs控件同名的变量,我们应该认为aspx.design.cs中的控件就是view的一部分,我们无法控制。
478 0
|
机器学习/深度学习 前端开发
介绍一些免费的DNN模块
网址:http://oliverhine.com/DotNetNuke.aspx Administration Advanced Control Panel Free fully featured ajax enabled control panel replacement for Dot...
820 0
|
机器学习/深度学习
如何使用NAnt 自动打包DNN模块 之一
一、安装NAnt 每次开发完毕一个DNN模块的版本,打包DNN模块是一件很繁琐的事情。更重要的是,为每一个发布的版本做一个安装包如果用手工管理和容易出错。这里介绍一下如何使用NAnt自动打包模块。 首先需要下载NAnt,http://sourceforge.net/projects/nant/ 下载之后解压这个ZIP包 解压之后的目录重名名为NAnt,拷贝到c:下面。
943 0
|
机器学习/深度学习 SEO
介绍几个DNN SEO模块,可免费试用的
iFinity Url Master - Get the best SEO results by taking control of your DNN urls iFinity Tagger - Tag your DNN content and create specific, target...
608 0
|
XML 机器学习/深度学习 数据格式
DNN Navisuite菜单模块原始XML文件的格式
DNN 比较好用的一个菜单模块式Navsuite模块,这个模块因为使用XML+XSL的技术手段,可以灵活的生成各种各样的菜单样式。 你可以通过修改style目录下的xsl文件来创建自己的菜单样式,但有一个问题是这个模块没有非常详细的手册,生成的XML是什么格式我们并不熟悉,我这里把生成的XML贴出来给大家参考。
774 0
|
机器学习/深度学习
DNN模块调试的一点小技巧
有时候模块出错只是出现这样的错误提示: A critical error has occurred. object reference not set to an instance of an object. 这样的错误提示是毫无价值的,那如何得到有价值的错误提示信息呢?可以使用我之前提高的DNN调试利器DNNDebug.aspx--如何调试出错信息不具体的程序错误就可以解决问题。
699 0