2014-09-12 65 views
2

我们已经建立了一个EPiServer现场和www.mysite.com停止EPiServer试图服务请求到我的虚拟目录

现在,我们已经建立了一个小型的.NET微型不属于EPiServer的一部分运行项目,我们希望作为一个IIS虚拟目录运行www.mysite.com/microsite

目前我们看到404被返回微型网站上的所有资产,所以www.mysite.com/microsite/assets /js/myjs.js或www.mysite.com/microsite/assets/img/myimg.jpg

微型网站的主页已投放,但资产缺失。有一个我可以配置主EPiServer项目以忽略对我的microsites文件夹结构的所有请求。

+0

Mvc或Webforms? – 2014-09-24 09:58:08

+0

MVC,我相信我们已经解决了问题,我会回答下面 – 2014-09-24 13:34:57

+0

是的,如果你找到它,请添加答案。 – 2014-09-24 13:35:47

回答

1

经过一段时间的争论这个问题,我们现在有一个可重复的解决方案。

在父申请(EPiServer溶液),我们需要在web.config添加以下位置元件

<location path="MY-IIS-APPLICATION-NAME"> 
    <system.webServer> 
     <handlers> 
     <clear /> 
     <add name="wildcard" path="*" verb="*" type="System.Web.StaticFileHandler" /> 
     </handlers> 
    </system.webServer> 
    </location> 

然后,在相同的web.config我们将此元素包住<system.web><system.webserver>部分<location path="." inheritInChildApplications="false">

最后,我们需要改变我们的IIS应用程序的Web.config卸载EPiServer处理程序和库。

所以,在<system.web>节中,我们加入了这些元素

<httpModules> 
    <clear /> 
</httpModules> 

<httpHandlers> 
    <clear /> 
</httpHandlers> 

那么我们做出这些改变的<system.webserver>内/清除

<handlers> 
    <remove name="ExtensionlessUrlHandler-Integrated-4.0" /> 
</handlers> 
<modules> 
    <remove name="InitializationModule" /> 
    <remove name="FirstBeginRequestModule" /> 
    <remove name="Initializer" /> 
    <remove name="WorkflowRuntime" /> 
    <remove name="UrlRewriteModule" /> 
    <remove name="ShellRoutingModule" /> 
    <remove name="ContainerDisposal" /> 
    <remove name="PropertyInjection" /> 
    <remove name="AttributedInjection" /> 
</modules> 

种种机会,这不是解决办法,但在过去的几天里,我们已经将其推广到了6个不同的项目,并且每次都会产生预期的效果。