dnn - 用于不存在的页面重定向的自定义模块
dnn - Custom module for unexisting page redirect
我想创建 dnn 自定义模块,将一些旧的 url-s 重定向到新页面。
我知道如何创建数据 table 并向此 table 添加记录。 table 具有包含所需数据的旧-url 和新-url 字段。例如:www.domain.com/oldurl, www.domain.com/newurl
如果我在模块视图中使用重定向,那么我只能将现有页面重定向到新页面,为此我不需要制作自定义模块...
我的问题是:要覆盖或使用什么我可以拦截请求并使用自定义 dnn 模块进行重定向?
===== 编辑 =====
我也找到了这个:dnnurlproviders
https://archive.codeplex.com/?p=dnnurlproviders
这还在某处维护吗?
进行自定义重定向的答案是创建自定义 ExtensionUrlProvider。
一些有用的链接是:
http://www.dnnsoftware.com/answers/getting-started-with-dnnfriendlyurl-in-dnn-72x
http://www.dnnsoftware.com/answers/custom-extensionurlprovider
dnn 9.0.0 和 dnn 9.0.1 之后缺少自定义 ExtensionUrlProvider 的设置位于:
SEO > URL管理
https://dnntracker.atlassian.net/browse/DNN-9148?attachmentOrder=desc
===========================
也为了在 iis 中处理旧 .php 链接的重定向,您必须在 IIS 中创建新的处理程序映射。只需将 PageHandlerFactory 复制到 *.php Path.
您也可以在不编写模块的情况下执行此操作,只需将记录添加到 DNN 中的 TABURLS table。
INSERT INTO dbo.TabUrls ( TabId ,
SeqNum ,
Url ,
QueryString ,
HttpStatus ,
CultureCode ,
IsSystem ,
PortalAliasId ,
PortalAliasUsage ,
CreatedByUserID ,
CreatedOnDate ,
LastModifiedByUserID ,
LastModifiedOnDate
)
VALUES ( ###, -- TabId - int
3 , -- SeqNum - int
N'/OLDURLHERE' , -- Url - nvarchar(200)
N'' , -- QueryString - nvarchar(200)
N'301' , -- HttpStatus - nvarchar(50)
N'' , -- CultureCode - nvarchar(50)
1 , -- IsSystem - bit
null , -- PortalAliasId - int
0 , -- PortalAliasUsage - int
1 , -- CreatedByUserID - int
GETDATE() , -- CreatedOnDate - datetime
0 , -- LastModifiedByUserID - int
GETDATE() -- LastModifiedOnDate - datetime
)
我想创建 dnn 自定义模块,将一些旧的 url-s 重定向到新页面。 我知道如何创建数据 table 并向此 table 添加记录。 table 具有包含所需数据的旧-url 和新-url 字段。例如:www.domain.com/oldurl, www.domain.com/newurl
如果我在模块视图中使用重定向,那么我只能将现有页面重定向到新页面,为此我不需要制作自定义模块...
我的问题是:要覆盖或使用什么我可以拦截请求并使用自定义 dnn 模块进行重定向?
===== 编辑 =====
我也找到了这个:dnnurlproviders https://archive.codeplex.com/?p=dnnurlproviders 这还在某处维护吗?
进行自定义重定向的答案是创建自定义 ExtensionUrlProvider。
一些有用的链接是:
http://www.dnnsoftware.com/answers/getting-started-with-dnnfriendlyurl-in-dnn-72x
http://www.dnnsoftware.com/answers/custom-extensionurlprovider
dnn 9.0.0 和 dnn 9.0.1 之后缺少自定义 ExtensionUrlProvider 的设置位于:
SEO > URL管理
https://dnntracker.atlassian.net/browse/DNN-9148?attachmentOrder=desc
===========================
也为了在 iis 中处理旧 .php 链接的重定向,您必须在 IIS 中创建新的处理程序映射。只需将 PageHandlerFactory 复制到 *.php Path.
您也可以在不编写模块的情况下执行此操作,只需将记录添加到 DNN 中的 TABURLS table。
INSERT INTO dbo.TabUrls ( TabId ,
SeqNum ,
Url ,
QueryString ,
HttpStatus ,
CultureCode ,
IsSystem ,
PortalAliasId ,
PortalAliasUsage ,
CreatedByUserID ,
CreatedOnDate ,
LastModifiedByUserID ,
LastModifiedOnDate
)
VALUES ( ###, -- TabId - int
3 , -- SeqNum - int
N'/OLDURLHERE' , -- Url - nvarchar(200)
N'' , -- QueryString - nvarchar(200)
N'301' , -- HttpStatus - nvarchar(50)
N'' , -- CultureCode - nvarchar(50)
1 , -- IsSystem - bit
null , -- PortalAliasId - int
0 , -- PortalAliasUsage - int
1 , -- CreatedByUserID - int
GETDATE() , -- CreatedOnDate - datetime
0 , -- LastModifiedByUserID - int
GETDATE() -- LastModifiedOnDate - datetime
)