我想嵌入一個果園CMS部分(相同的域 - 控制住在一個子目錄關閉主果園安裝)。我在這裏發現了兩條線索,談論我遇到的問題(請參閱here和here),但我仍然遇到問題。我試圖在iFrame中加載的頁面是標準的WebForms,並且需要WebResource.axd和ScriptResource.axd。我設法讓WebResource.axd工作,但ScriptResource返回500內部服務器錯誤(根據Chrome),但我無法弄清楚是什麼導致了500或什麼是真正的錯誤。從我的web.config相關的條目如下 - 任何建議?果園,WebForms和iFrames
<handlers accessPolicy="Script">
<!-- clear all handlers, prevents executing code file extensions, prevents returning any file contents -->
<clear />
<!-- Custom Controls -->
<add name="ASPX" path="*.aspx" verb="*" type="System.Web.UI.PageHandlerFactory" preCondition="integratedMode" requireAccess="Script"/>
<add name="WebResource" path="WebResource.axd" verb="GET" type="System.Web.Handlers.AssemblyResourceLoader" preCondition="integratedMode" />
<add name="ScriptResource" path="ScriptResource.axd" verb="GET" type="System.Web.Handlers.ScriptResourceHandler" preCondition="integratedMode" />
<!-- Everything below added from Orchard -->
<!-- Return 404 for all requests via managed handler. The url routing handler will substitute the mvc request handler when routes match. -->
<!--<add name="NotFound" path="*" verb="*" type="System.Web.HttpNotFoundHandler" preCondition="integratedMode" requireAccess="Script" />-->
<!-- WebApi -->
<remove name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" />
<remove name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" />
<remove name="ExtensionlessUrlHandler-Integrated-4.0" />
<add name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
<add name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
</handlers>
關閉自定義錯誤以獲取正確的堆棧跟蹤。 但是真正你最好的選擇是把你的webforms放在一個完全獨立的應用程序中。您已經在iframe中使用它,所以它應該沒關係。 –
我試過了(而且還在玩它),但沒有運氣。這個問題似乎是父配置的 條目。當在子應用程序(不是虛擬目錄)中時,ScriptResource.axd會返回一個404,直到我從system.webServer/handlers中的父級刪除 標記,但是刪除它會打亂Orchard非常糟糕。還有其他建議嗎? –
RubyHaus
不是* Orchard應用程序下的應用程序*,它是一個獨立的應用程序*。如果你把Orchard放在\ Inetpub \ wwwroot下,那麼這首先不是一個好主意。最好在其他地方創建vdirs或在其下創建vid,然後將IIS指向這些目錄。希望這可以幫助。 –