当前位置: 首页 > news >正文

wap手机网站尺寸吉林企业网站模板建站哪个好

wap手机网站尺寸,吉林企业网站模板建站哪个好,莆田系医院的网站用什么做的,阿里云服务器 怎么设置网站环境通过 URL Rewrite Module 组件 URL Rewrite Module 是一个用于在 ASP.NET Web Forms 或其他基于 IIS 的 Web 应用程序中重写 URL 的强大工具。这个模块允许你将复杂的、不易于记忆或不利于搜索引擎优化的 URL 转换为更简洁、更友好的格式。通过 URL 重写#xff0c;你可以提高…通过 URL Rewrite Module 组件 URL Rewrite Module 是一个用于在 ASP.NET Web Forms 或其他基于 IIS 的 Web 应用程序中重写 URL 的强大工具。这个模块允许你将复杂的、不易于记忆或不利于搜索引擎优化的 URL 转换为更简洁、更友好的格式。通过 URL 重写你可以提高网站的用户体验增强搜索引擎排名并更好地控制 URL 结构。 URL Rewrite Module 的主要特点包括 规则定义你可以定义一系列规则用于匹配传入的 URL 模式并将其重写到新的 URL。这些规则可以基于正则表达式、通配符或其他逻辑进行定义非常灵活。 HTTP 头和服务器变量重写规则可以基于 HTTP 请求头、服务器变量或其他条件进行匹配和执行。这使得你可以根据特定的请求属性或上下文来定制 URL 重写逻辑。 重定向和自定义响应除了简单的 URL 重写你还可以使用 URL Rewrite Module 来定义重定向规则将用户从一个 URL 自动转发到另一个 URL。此外你还可以发送自定义的 HTTP 响应或中止请求。 性能优化URL 重写模块在 IIS 管道中早期阶段处理请求因此它不会对应用程序的性能产生负面影响。相反通过优化 URL 结构它可以提高网站的可访问性和响应速度。 集成与扩展性URL Rewrite Module 与 IIS 紧密集成可以方便地通过 web.config 文件进行配置和管理。此外它还支持导入其他 Web 服务器如 Apache的重写规则方便迁移和集成。 示例 Url Rewite 官网 下载 URL Rewrite Module 2.1 并安装 {HTTP_REFERER} 模式为 ^http://localhost/.*$ 意思是 请求 HTTP_REFERER 必须包含 http://localhost/ 字符规则当然是根据自己的情况写。 添加保存后站点的 web.config 文件的 system.webServer 节点下就多了 rewrite 节点配置如下。 system.webServerrewriterulesrule name防盗链 stopProcessingtruematch url.*\.(gif|jpg|png) /!--action typeRedirect urlhttp://www.baidu.com /--action typeCustomResponse statusCode403 subStatusCode403 statusReasonPlease do not steal my pictures statusDescriptionPlease do not steal my pictures /conditionsadd input{HTTP_REFERER} pattern^http://localhost/.*$ negatetrue //conditions/rule/rules/rewrite/system.webServer效果 自定义 HttpModule 处理 在 ASP.NET 中HttpModule 是一个用于处理 HTTP 请求和响应的重要组件。通过实现 IHttpModule 接口并定义 Init 和 Dispose 方法你可以创建自定义的 HttpModule并在 ASP.NET 请求处理管道中的不同阶段插入自定义逻辑。 HttpModule 的主要作用包括 请求和响应处理你可以在请求到达页面或处理程序之前或之后执行自定义代码例如添加 HTTP 头、修改响应内容、执行身份验证或授权逻辑等。 事件处理HttpModule 可以订阅 HttpApplication 对象上的各种事件如 BeginRequest、EndRequest、AuthenticateRequest 等以便在请求处理的不同阶段执行代码。 全局功能由于 HttpModule 在整个 ASP.NET 应用程序中都是全局的因此它们非常适合用于实现跨多个页面或处理程序的通用功能。 性能监控和日志记录你可以使用 HttpModule 来监控应用程序的性能记录请求和响应的详细信息以便进行故障排除和性能优化。 在 ASP.NET 中HttpModule 通过订阅 HttpApplication 对象的事件来参与请求处理管道的不同阶段。这些事件允许你在请求的生命周期中的特定点执行自定义逻辑。以下是一些 HttpApplication 事件你可以在 HttpModule 的 Init 方法中订阅它们 BeginRequest当 ASP.NET 接收到一个新的 HTTP 请求时触发。这是处理请求的最早阶段可以在此阶段执行诸如 URL 重写、请求验证或日志记录等操作。 AuthenticateRequest在 ASP.NET 对请求进行身份验证时触发。通常在此阶段使用配置的身份验证模块来确定用户的身份。 PostAuthenticateRequest在身份验证过程完成后触发。可以在此阶段访问身份验证的结果或执行与身份验证相关的后处理逻辑。 AuthorizeRequest在 ASP.NET 对请求进行授权时触发。在此阶段可以基于用户的身份或其他条件确定是否允许访问请求的资源。 PostAuthorizeRequest在授权过程完成后触发。可以在此阶段访问授权的结果或执行与授权相关的后处理逻辑。 ResolveRequestCache在 ASP.NET 尝试从缓存中获取请求的响应时触发。如果请求的内容已经在缓存中则可以直接从缓存中提供响应而无需执行后续的处理程序。 PostResolveRequestCache在检查缓存并确定是否使用缓存响应后触发。无论是否使用了缓存都会触发此事件。 MapRequestHandler在 ASP.NET 确定要处理请求的 HTTP 处理程序时触发。这通常涉及根据请求的 URL 和配置映射到适当的处理程序。 PostMapRequestHandler在映射处理程序后触发。可以在此阶段访问选定的处理程序或执行与处理程序选择相关的后处理逻辑。 AcquireRequestState在 ASP.NET 获取与当前请求关联的状态如会话状态时触发。这是处理与会话或应用程序状态相关的逻辑的好地方。 PostAcquireRequestState在获取请求状态后触发。可以在此阶段访问请求状态或执行与状态获取相关的后处理逻辑。 PreRequestHandlerExecute在 ASP.NET 开始执行选定的 HTTP 处理程序之前触发。这是准备请求数据或执行其他预处理逻辑的最后机会。 PostRequestHandlerExecute在 HTTP 处理程序执行后触发。可以在此阶段访问处理程序的输出或执行与处理程序执行相关的后处理逻辑。 ReleaseRequestState在 ASP.NET 释放与当前请求关联的状态时触发。这是清理与状态相关的资源的好时机。 PostReleaseRequestState在释放请求状态后触发。可以在此阶段执行与状态释放相关的后处理逻辑。 UpdateRequestCache如果请求的响应可以被缓存则在发送响应到客户端之前触发。可以在此阶段将响应添加到缓存中以便后续请求可以直接从缓存中获取。 EndRequest在 ASP.NET 完成请求处理并将响应发送到客户端或缓存后触发。这是执行清理操作或记录请求结束时间的最后机会。 Error在处理 HTTP 请求的过程中如果出现未处理的异常将触发此事件。可以在此阶段记录错误、执行错误处理逻辑或重定向到错误页面。 示例 修改 web.config 配置文件 system.webServermodulesadd nameantiTheftChainModule typeAntiTheftChain.AntiTheftChainModule,AntiTheftChain //modules/system.webServer创建实现 IHttpModule 接口的 AntiTheftChainModule 类 using System; using System.Collections.Generic; using System.Linq; using System.Text.RegularExpressions; using System.Web;namespace AntiTheftChain {public class AntiTheftChainModule : IHttpModule{public void Dispose(){}public void Init(HttpApplication context){context.BeginRequest Context_BeginRequest;}private void Context_BeginRequest(object sender, EventArgs e){HttpApplication context (HttpApplication)sender;var regex new Regex(/[^/](.jpg|.bmp|.gif|.png));var request context.Context.Request;if (!regex.IsMatch(request.RawUrl)) return;if (request.UrlReferrer null || !127.0.0.1.Equals(request.UrlReferrer.Host)){context.Response.StatusCode 403;context.Response.StatusDescription (IHttpModule) Please do not steal my pictures;context.Context.Response.End();return;}var fileName context.Context.Server.MapPath(request.FilePath);context.Context.Response.WriteFile(fileName);}} }效果 自定义 HttpHandler 处理 HttpHandler 是 ASP.NET 中的一个重要组件负责处理 HTTP 请求。它实际上是 ISAPI 的扩展处于 HTTP 请求处理的最底层负责实现具体的请求响应逻辑。 当一个 HTTP 请求通过 HttpModule 容器传递到 HttpHandler 容器中时ASP.NET Framework 会调用 HttpHandler 的 ProcessRequest 成员方法来对这个请求进行真正的处理。HttpHandler 能够处理一种或多种类型的文件或资源其处理逻辑是通过实现 IHttpHandler 接口来定义的。 在 ASP.NET 中创建的 ASP.NET 页面如.aspx 文件通常会被视为 HttpHandler因为它们实现了 IHttpHandler 接口并最终负责生成 HTTP 响应。然而有时我们可能需要处理非 HTML 类型的响应如 XML 数据或图片等这时就可以通过自定义 HttpHandler 来实现。 自定义 HttpHandler 能够让你更灵活地控制请求的处理方式实现更复杂的业务逻辑。例如你可以创建一个自定义的 HttpHandler 来处理特定的文件类型或者在处理请求之前进行身份验证和授权检查。 此外HttpHandler 还提供了对 HTTP 请求和响应的完全控制包括读取请求头、请求体、查询字符串等信息以及设置响应状态码、响应头、响应体等。这使得 HttpHandler 在处理复杂的 HTTP 请求和生成自定义的 HTTP 响应时非常有用。 总的来说HttpHandler 是 ASP.NET 中处理 HTTP 请求的核心组件通过实现 IHttpHandler 接口并定义处理逻辑我们可以实现对 HTTP 请求的灵活处理和自定义响应的生成。 示例 修改 web.config 配置文件 system.webServerhandlersadd nameantiTheftChainHandler path*.jpg verb* typeAntiTheftChain.AntiTheftChainHandler,AntiTheftChain //handlers/system.webServer创建实现 IHttpHandler 接口的 AntiTheftChainHandler 类 using System; using System.Collections.Generic; using System.Linq; using System.Web;namespace AntiTheftChain {public class AntiTheftChainHandler : IHttpHandler{public const string ImgHost 127.0.0.1;public bool IsReusable true;public void ProcessRequest(HttpContext context){var response context.Response;var request context.Request; if (request.UrlReferrer null || !ImgHost.Equals(request.UrlReferrer.Host)){context.Response.StatusCode 403;context.Response.StatusDescription (IHttpHandler) Please do not steal my pictures;response.End();return;}var fileName context.Server.MapPath(request.FilePath);response.WriteFile(fileName);if (request.UrlReferrer null || ImgHost.Equals(request.UrlReferrer.Host)){response.WriteFile(fileName);}else{context.Response.StatusCode 403;context.Response.StatusDescription (IHttpHandler) Please do not steal my pictures;response.End();}}} }效果 HttpModule 和 HttpHandler 的区别 HttpModule 和 HttpHandler 在 ASP.NET 中各自扮演不同的角色它们之间的主要区别体现在以下方面 功能和职责 HttpModule它主要作为 HTTP 请求的“必经之路”位于请求处理管道中。HttpModule 可以在请求传递到最终的 HttpHandler 之前执行一些额外的操作如安全检查、日志记录等。它也可以在某些条件下终止满足特定条件的请求起到了过滤器的作用。每个 HTTP 请求都会逐一通过每个 HttpModule。HttpHandler它是页面请求的最终处理中心负责处理具体的工作。每个请求最终都会交给 HttpHandler 的 ProcessRequest()方法进行处理。HttpHandler 针对不同类型的请求提供不同的处理方式。 配置和使用 HttpModule 的配置可以指定类名和命名空间并且可以有多个每个都可以订阅管道事件中的任意事件以实现自定义功能。HttpHandler 的配置则涉及可访问的文件、命名空间以及文件类型等。它更类似于 WebForm可以指定访问特定页面的特定方法。 作用范围 HttpModule 相当于 Global它的定义的方法会被所有的页面访问到。HttpHandler 则针对每一种类型的请求只有一种处理方式是覆盖关系。 总结来说HttpModule 和 HttpHandler 在 ASP.NET 中协同工作共同处理 HTTP 请求。HttpModule 作为过滤器在请求处理之前进行预处理和条件判断而 HttpHandler 则作为请求的最终处理中心负责实现具体的请求响应逻辑。两者在配置、使用和作用范围上也有所不同但共同构成了 ASP.NET 请求处理的关键部分。
http://www.zqtcl.cn/news/520839/

相关文章:

  • 做网站用那一种语言最好武邑网站建设价格
  • 哈尔滨网站制作招聘互动的网站
  • 专业网站建设品牌网站建设基础课件
  • 自学网站编程网站建设银行北京冬奥会纪念币发行时间
  • 个人网站备案需要盖章吗做网站用什么颜色好
  • 在线制作论坛网站做网站开发团队
  • 2017年网站建设工作总结dhru商城网站建设
  • 建设网站需要申请深圳的网站建设的公司
  • 教育类的网站案例门户网站建设推广
  • 网站建设公司哪家比较好外贸网站建设公司价格
  • 做网站大概价格网站备案填写
  • 网站建设容易出现的问题网站建设学习网公司有哪些
  • 做网站的准备什么com域名
  • 百度资料怎么做网站赣州有没有做网站的
  • 网站上地图怎么做的福建省晋江市建设局网站
  • 休闲咖啡厅网站开发目标站内推广的方法和工具
  • 东莞做营销型网站怎样利用网站做引流
  • 国际1688网站网络平台宣传费用
  • 免费网站自助建站18款禁游戏黄app入口
  • 网站建设要经历哪些步骤?wordpress主题king
  • 个人定制网站外贸免费网站建设
  • ASP网站建设实训报告总结宜昌本地网站建设
  • 甘肃省建设厅官方网站张睿建立网站服务器
  • 有没有做博物馆的3d网站网页美工设计岗前培训
  • 如何防止网站被盗长沙知名网站建设
  • 汕尾住房和建设局网站山西招标网
  • 网站建设那好山西建设厅网站
  • 2免费做网站外贸公司注册需要多少钱
  • 莘县网站定制安卓软件开发培训机构
  • 织梦视频网站源码有没有专门做名片的网站