簡體   English   中英

經典到集成模式,http 處理程序未運行

[英]Classic to integrated mode, http handlers not running

我正在將一個舊應用程序從經典模式遷移到集成模式,之前注冊的 http 處理程序不再工作。 我已經將處理程序部分放在 system.webServer 下他們應該去的地方,但沒有骰子:

<system.webServer>
  <handlers>
    ...
    <add name="zip.ashx_*" path="zip.ashx" verb="*" type="ZipDownloadHandler, Assembly" preCondition="integratedMode,runtimeVersionv2.0" resourceType="Unspecified" />
    <add name="file.ashx_*" path="file.ashx" verb="*" type="FileDownloadHandler, Assembly" preCondition="integratedMode,runtimeVersionv2.0" resourceType="Unspecified" />
    <add name="stream.ashx_*" path="stream.ashx" verb="GET" type="StreamDownloadHandler, Assembly" preCondition="integratedMode,runtimeVersionv2.0" resourceType="Unspecified" />
  </handlers>
...
</system.webServer>

但他們總是返回 404。配置轉儲來自

appcmd list config "Default Web Site/MyApp" -section:system.webServer/handlers

正確顯示處理程序:

<system.webServer>
  <handlers accessPolicy="Read, Script">
    ...
    <add name="zip.ashx_*" path="zip.ashx" verb="*" type="ZipDownloadHandler, Assembly" resourceType="Unspecified" requireAccess="Script" preCondition="integratedMode,runtimeVersionv2.0" />
    <add name="file.ashx_*" path="file.ashx" verb="*" type="FileDownloadHandler, Assembly" resourceType="Unspecified" requireAccess="Script" preCondition="integratedMode,runtimeVersionv2.0" />
    <add name="stream.ashx_*" path="stream.ashx" verb="GET" type="StreamDownloadHandler, Assembly" resourceType="Unspecified" requireAccess="Script" preCondition="integratedMode,runtimeVersionv2.0" />
   ...

如果我從 stream.ashx 切換到將處理程序路徑注冊為 stream.foo,我仍然得到 404,但錯誤頁面不同。 對於stream.ashx,它看起來像這樣,而對於stream.foo,它看起來像這樣

也許stream.ashx 實際上觸發了*.ashx 處理程序,然后該處理程序查找名為stream.ashx 的文件,但找不到。 我真的不知道其他處理程序發生了什么,因為我的配置看起來是正確的。 任何建議,將不勝感激。

我從來沒有讓它工作,所以我只是用路由處理程序替換了 web.config 中的模塊注冊:

RouteTable.Routes.Add("stream", new Route("stream", new RouteHandler(new StreamDownloadHandler())));
RouteTable.Routes.Add("file", new Route("file", new RouteHandler(new FileDownloadHandler())));
RouteTable.Routes.Add("zip", new Route("zip", new RouteHandler(new ZipDownloadHandler())));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM