【问题标题】:How to apply a custom handlers to only specific folder如何将自定义处理程序仅应用于特定文件夹
【发布时间】:2011-10-18 16:15:48
【问题描述】:

我使用 Asp.Net 4 C# 和 IIS 7.5。

在 web.config 中,我能够成功应用我的处理程序(代码如下),如您所见 path="*.jpg" 让处理程序在我网站的任何文件夹中运行。

我需要改为应用此处理程序to all .jpg request but ONLY in a specific folder,在我的情况下为/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>
...

【问题讨论】:

    标签: c# asp.net iis-7 iis-7.5 handler


    【解决方案1】:

    尝试在您的网站文件夹中创建 /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 中删除。看看这是否有效。

    【讨论】:

    • 我按照您在 /cdn/ 中的建议创建了一个新的 web.config,现在可以使用了,再次感谢您的帮助和建议。
    猜你喜欢
    • 1970-01-01
    • 2017-01-22
    • 2020-07-29
    • 2023-02-11
    • 1970-01-01
    • 1970-01-01
    • 2011-10-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多