我的角项目位于app
文件夹中,因此我引用它我必须发送到http://localhost:45485/app
,但我想从此网址中删除app
。我试图这样做,但它不起作用。我不知道该怎么办,请帮助我。
web.config文件:
<rewrite>
<rules>
<clear/>
<rule name="app" stopProcessing="true">
<match url="^(.+)$" />
<conditions>
<add input="{APPL_PHYSICAL_PATH}app\{R:1}" matchType="IsFile" />
</conditions>
<action type="Rewrite" url="/app/{R:1}" />
</rule>
<rule name="index.html as document root" stopProcessing="true">
<match url="^$" />
<action type="Rewrite" url="/app/index.html" />
</rule>
</rules>
</rewrite>
结果我有这个问题:
答案 0 :(得分:0)
我可能没有得到&#34;目的&#34;这个或问题的要点所以假设你只想让你的SPA成为&#34;主要&#34;入口点(又名http://example.com/
),而你的Angular资产都在/app
文件夹中,那么就没有必要改写重写规则,也不会影响(整个){{1应用程序(因为重写规则)。
不是Angular&#34;专家&#34;所以这是一个简单的例子供你改进:
您的Asp.Net/MVC/Web Api
可以很好地保持在&#34;默认&#34; (&#34;主页&#34; - &gt;&#34;索引&#34;)ng-app
View
应用程序 - &#34;容器&#34;如果你愿意的话。不#34;重写&#34;它需要/必要的规则是&#34;索引&#34;您网站的(第一页/默认页面)。
ASP.Net MVC/Web Api
MVC index.cshtml
使用ui-router
View
您的Angular资源可以在<div id="foo" ng-app="myNgApp">
<ui-view></ui-view>
</div>
文件夹
/app
使用ui-router(参见上面的链接),它会像这样
/app
index.html
page2.html
请注意,我在资源$stateProvider
.state('home', {
templateUrl: '/app/index.html' //maps to root -> app -> index.html
})
.state('foo', {
templateUrl: '/app/page2.html' //maps to root -> app -> page2.html
})
中使用完整路径(&#34; root relative&#34;),因为它映射到您的网站/应用程序文件夹而不是相对(到templateUrl
子文件夹)。
H个。