在 umbraco 项目中注册 HTTP 处理程序
Register HTTP handler in umbraco project
我已经创建了这个 http 处理程序:
public void ProcessRequest(HttpContext context)
{
//write your handler implementation here.
string RequestedPage = context.Request.Url.Segments[1].ToString().ToLower();
string queriedRequest = "category1-page";
bool doesUrlContain = RequestedPage.Equals(queriedRequest);
if (doesUrlContain)
{
context.Response.Redirect(context.Request.Url.Segments[0] + "production" + context.Request.Url.Segments[2]);
}
}
它应该处理对 "test-page" 或其子页面的每次调用,并通过更改 URL 的一部分进行重定向。
然而,我不太清楚如何在我的 umbraco 项目中注册这个处理程序。也许有人可以提供一步一步的教程?
当用户使用旧 link 页面或子页面并在根页面更改时重定向到正确的页面时,此处理程序应该 运行。
本地我用iis7做开发
谢谢转发。
在您的 web.config 中,您需要添加一个处理程序来引用您定义 http 处理程序的 class,如下所示:
<system.webServer>
<handlers>
<add name="MyHandler" path="test-page" verb="*" type="MyNamespace.MyHandlerClass" resourceType="Unspecified" preCondition="integratedMode" />
http 处理程序必须在与 web.config 相同的程序集中定义。
我已经创建了这个 http 处理程序:
public void ProcessRequest(HttpContext context)
{
//write your handler implementation here.
string RequestedPage = context.Request.Url.Segments[1].ToString().ToLower();
string queriedRequest = "category1-page";
bool doesUrlContain = RequestedPage.Equals(queriedRequest);
if (doesUrlContain)
{
context.Response.Redirect(context.Request.Url.Segments[0] + "production" + context.Request.Url.Segments[2]);
}
}
它应该处理对 "test-page" 或其子页面的每次调用,并通过更改 URL 的一部分进行重定向。 然而,我不太清楚如何在我的 umbraco 项目中注册这个处理程序。也许有人可以提供一步一步的教程?
当用户使用旧 link 页面或子页面并在根页面更改时重定向到正确的页面时,此处理程序应该 运行。
本地我用iis7做开发
谢谢转发。
在您的 web.config 中,您需要添加一个处理程序来引用您定义 http 处理程序的 class,如下所示:
<system.webServer>
<handlers>
<add name="MyHandler" path="test-page" verb="*" type="MyNamespace.MyHandlerClass" resourceType="Unspecified" preCondition="integratedMode" />
http 处理程序必须在与 web.config 相同的程序集中定义。