我使用 Asp.Net 4 C# 和 IIS 7.5。
在 web.config 中,我能够成功应用我的处理程序(代码如下),如您所见 path="*.jpg"
让处理程序在我网站的任何文件夹中运行。
我需要将此处理程序应用于所有.jpg请求,但仅在特定文件夹中
,在我的例子中/Cdn/Cms/Images/
因此我更新为 path="/Cdn/Cms/Images/*.jpg"
但处理程序不适用。
我尝试了很多次不同的路径,但现在是这样。
如何将处理程序仅应用于特定文件夹?
感谢您抽出时间来讨论此问题。
此问题与 this one 相关
<system.webServer>
...
<validation validateIntegratedModeConfiguration="false" />
<handlers>
<add name="Cms-ImageRouteHandler" path="*.jpg" verb="*" type="WebProject.Cms.BusinessLogics.SEO.Routing.ImageRouteHandler" resourceType="Unspecified" requireAccess="Script" preCondition="integratedMode" />
</handlers>
...
最佳答案
尝试在您的网站文件夹中创建 /Cdn/Cms/images
文件夹结构,然后在该文件夹中创建一个 web.config,其中包含以下内容:
<configuration>
<system.webServer>
<validation validateIntegratedModeConfiguration="false" />
<handlers>
<add name="Cms-ImageRouteHandler" path="*.jpg" verb="*" type="WebProject.Cms.BusinessLogics.SEO.Routing.ImageRouteHandler" resourceType="Unspecified" requireAccess="Script" preCondition="integratedMode" />
</handlers>
</system.webServer>
</configuration>
然后您可以将其从主站点的 web.config 中删除。看看是否有效。
关于c# - 如何将自定义处理程序仅应用于特定文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7810435/