Asp.net DotNetNuke网站迁移到Azure失败,出现nx域DNS错误

Asp.net DotNetNuke网站迁移到Azure失败,出现nx域DNS错误,asp.net,azure,dns,azure-web-app-service,dotnetnuke,Asp.net,Azure,Dns,Azure Web App Service,Dotnetnuke,我目前正在开发一个DotNetNuke网站(07.03.02),我正在尝试将其迁移到Azure。网站正在使用IIS在我的本地计算机上运行 我按照本教程迁移了网站: 因此,我在Azure上创建了一个新的web应用程序,它将承载网站文件。我还在Azure上创建了一个新数据库,并导入了我的DNN备份数据库 我更改了web.config中的连接字符串以使用Azure数据库,我将网站文件夹上载到Azure上 现在,如果我尝试使用链接[sitename].azurewebsites.net浏览我的Web应用

我目前正在开发一个DotNetNuke网站(07.03.02),我正在尝试将其迁移到Azure。网站正在使用IIS在我的本地计算机上运行

我按照本教程迁移了网站:

因此,我在Azure上创建了一个新的web应用程序,它将承载网站文件。我还在Azure上创建了一个新数据库,并导入了我的DNN备份数据库

我更改了web.config中的连接字符串以使用Azure数据库,我将网站文件夹上载到Azure上

现在,如果我尝试使用链接[sitename].azurewebsites.net浏览我的Web应用程序,我会遇到以下错误:

数据库中不存在DNN错误域名

DotNetNuke支持来自单个数据库/代码库的多个网站。 它通过转换客户端浏览器的URL来实现这一点 请求门户数据库表中的有效PortalID。这个 以下步骤描述了该过程:

当Web服务器接收到来自服务器的请求时的Web服务器处理 客户端浏览器,它比较目标URL上的文件扩展名 资源到其在IIS中定义的应用程序扩展映射。基于 在相应的匹配上,IIS然后将请求发送到定义的 可执行路径(对于ASP.NET请求,为aspnet_asapi.dll)。 aspnet_isapi.dll引擎以有序序列处理请求 以应用程序_BeginRequest开头的事件的数目。 HttpModule.URLRewrite OnBeginRequest(UrlRewriteModule.vb)的 请求URL根据域名的“/”字符进行解析 使用每个相关的解析URL段构造

示例:

URL:
http://www.exemple.com/default.aspx
=域名:
www.example.com
URL:
http://209.75.24.131/default.aspx
=域名:
209.75.24.131

URL:
http://localhost/DotNetNuke/default.aspx
=域名: localhost/DotNetNuke URL:
http://www.exemple.com/virtualdirectory/default.aspx
=域名:
www.example.com/virtualdirectory
URL:
http://www.exemple.com/directory/default.aspx
=域名:
www.example.com/directory

应用程序使用域名查询数据库(门户) 表-PortalAlias字段)以查找匹配记录

注意:如果有多个URL对应于同一个网站 然后,网站别名字段必须包含 逗号分隔的列表

例如:

URL:
http://localhost/DotNetNuke/default.aspx
URL:
http://MACHINENAME/DotNetNuke/default.aspx
URL:
http://209.32.134.65/DotNetNuke/default.aspx
PortalAlias: localhost/DotNetNuke,MACHINENAME/DotNetNuke,209.32.134.65/DotNetNuke

注意:如果要将应用程序安装到远程服务器,请 必须修改中默认记录的PortalAlias字段值 根据上面定义的规则创建门户表

因此,我将站点别名([sitename].azurewebsites.net)记录插入到PortalAlias表中

现在,当我尝试访问网站
[sitename].azurewebsites.net
,我没有以前的DNN错误,但它加载了很长一段时间,然后我得到了以下错误:

www.[sitename].azurewebsites.net的服务器DNS地址无法找到 建立DNS\u探测\u已完成\u NXDOMAIN

加载结束后,URL奇怪地变成了
https://www.[sitename].azurewebsites.net
,并且发生DNS错误

在Azure或我的web.config文件中是否有需要更改的内容?也许在DotNetNuke或ASP版本中需要配置一些东西

我不明白为什么我的浏览器会更改url以及为什么会发生此dns错误(我的本地IIS服务器没有问题)

(我还尝试了使用教程中提到的自动门户别名传输,但得到了相同的结果:别名插入到数据库中,但仍然存在NXdomain错误)

谢谢你的帮助


Etienne.

您收到来自DNN的错误是个好消息,这意味着您(可能)已经正确地完成了主要工作


现在,您需要进入数据库并修改PortalAlias表,以便为sitename.azurewebsites.net提供一个别名。(我假设sitename周围的括号不正确,“[sitename]”需要替换为您站点的实际域名。)

您收到来自DNN的错误是个好消息,这意味着您(可能)已经正确地完成了主要工作


现在,您需要进入数据库并修改PortalAlias表,以便为sitename.azurewebsites.net提供一个别名。(我假设sitename周围的括号不正确,“[sitename]”需要替换为您站点的实际域名。)

在您的原始帖子中,您有:

无法找到www.[sitename].azurewebsites.net的服务器DNS地址。DNS\u探测\u已完成\u NXDOMAIN

请尝试手动放置。(完整的、带有冒号的http等)有时web浏览器会自动添加WWW,认为您需要它(我讨厌他们这样做)。Azure不知道www子域,因此您可能会遇到此错误


编辑:哦,加载时间长是好的-这意味着azure编译了你的站点,而你没有得到编译错误。

在你的原始帖子中,你有:

无法找到www.[sitename].azurewebsites.net的服务器DNS地址。DNS\u探测\u已完成\u NXDOMAIN

请尝试手动放置。(完整、带冒号的http等)有时web浏览器会添加WWW automatica