Как зарегистрировать обработчик в web.config для iis7
Мне пришлось 301 перенаправить некоторые страницы htm. Я пытаюсь сделать это через HttpHandler
, Этот сайт не использует пространство имен. Я создал тестовый обработчик следующим образом:
<%@ WebHandler Language="C#" Class="htmlhandler" %>
using System;
using System.Web;
public class htmlhandler : IHttpHandler {
public void ProcessRequest (HttpContext context) {
string url = HttpContext.Current.Request.Url.AbsoluteUri;
context.Response.ContentType = "text/plain";
context.Response.Write(url);
}
public bool IsReusable {
get {
return false;
}
}
}
В Web.config
Я попытался зарегистрировать обработчик следующим образом:
<httpHandlers>
<add verb="*" path="*.htm" type="htmlhandler"/>
</httpHandlers>
Но я получаю следующую ошибку:
Parser Error Message: Could not load file or assembly 'htmlhandler' or one of its dependencies. The system cannot find the file specified.
Пожалуйста помоги. Мой обработчик помещен в App_Code
папку, но сервер не может ее найти.
1 ответ
Решение
Попробуйте использовать <add verb="*" path="*.htm" type="htmlhandler, assemblyName"/>
,
Также <system.webServer>
действует только если вы запускаете пул приложений в интегрированном режиме. Проверьте, используете ли вы пул приложений в интегрированном или классическом режиме.