gpt4 book ai didi

c# - HttpHandler 重定向

转载 作者:行者123 更新时间:2023-12-02 14:24:12 26 4
gpt4 key购买 nike

我想编写一个 HttpHandler 将流量重定向到服务器上的各个网页。用户将输入 http://www.thisissupposetoberedirected.com/site12 并应重定向到适当的网站,在此示例中为网站版本 1.2

我知道如何使用 ASP.NET 和 C# 进行编程,但我似乎没有掌握有关网站管理的更详细的细节。
我怎样才能完成这件事?我应该在 web.config 中做什么?我读过这个msdn page但这并没有多大帮助。

最佳答案

HttpHandlers 实际上是相当简单的组件。

首先,您需要创建一个继承 IHttpHandlerIHttpAsyncHandler 的类(为了您的使用,我建议使用 IHttpHandler 因为有确实没有做任何繁重的工作)。

然后编译 DLL 并将其放入 Web 应用程序的 bin 文件夹中。

现在是棘手的部分。在 web.config 文件中部署 HttpHandler 很棘手,因为 IIS6、IIS7 集成模式和 IIS7 经典模式之间有所不同。最好的查看位置是此 MSDN 页面:

How to: Register HTTP Handlers

IIS6

<configuration>
<system.web>
<httpHandlers>
<add verb="*" path="SampleHandler.new"
type="SampleHandler, SampleHandlerAssembly" />
</httpHandlers>
<system.web>
</configuration>

IIS7经典模式

<configuration>
<system.web>
<httpHandlers>
<add verb="*" path="SampleHandler.new"
type="SampleHandler, SampleHandlerAssembly" />
</httpHandlers>
<system.web>
<system.webServer>
<add name=SampleHandler" verb="*" path="SampleHandler.new"
Modules="IsapiModule"
scriptProcessor="FrameworkPath\aspnet_isapi.dll"
resourceType="File" />
</system.webServer>
</configuration>

IIS7集成模式

<configuration>
<system.webServer>
<handlers>
<add name="SampleHandler" verb="*"
path="SampleHandler.new"
type="SampleHandler, SampleHandlerAssembly"
resourceType="Unspecified" />
</handlers>
<system.webServer>
</configuration>

如您所见,每个 IIS 配置都需要 web.config 文件中略有不同的部分中的条目。我的建议是在每个位置添加条目,以便 IIS 配置更改不会破坏您的 HttpHandler。

关于c# - HttpHandler 重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2737886/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com