Я создал свой собственный httpmodule для обработки перезаписи URL, поэтому URL, такие как www.contoso.com/help/default.aspx
, будут указывать на www.contoso.com/default.aspx
, где находится реальный ресурс.
Это работает нормально, но из-за моей реализации модуля http у меня возникают проблемы с тем, что ScriptResource.axd не запускается должным образом, чтобы добавить JavaScript, необходимый для выполнения нажатий кнопок или функций, предоставляемых ajax.
У меня установлен IIS7 для использования классического конвейерного пула приложений. Я также обеспечил наличие в файле web.config необходимой информации.
Я вставил эту информацию ниже. Может ли кто-то определить, что я пропустил или должен был настроить по-другому?
<httpHandlers>
<remove verb="*" path="*.asmx" />
<remove path="WebResource.axd" verb="GET" />
<add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" validate="false" />
<add verb="*" path="*.aspx" type="myHandler" />
<add path="WebResource.axd" verb="GET" type="System.Web.Handlers.AssemblyResourceLoader" validate="True" />
</httpHandlers>
<httpModules>
<add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add name="myModule" type="myModule" />
</httpModules>