Angular 角度部署url资源路径

Angular 角度部署url资源路径,angular,iis,url-rewriting,Angular,Iis,Url Rewriting,大家可能都知道,将Angular部署到根以外的路径时,asset path存在问题:模板或样式表中存在的任何“/assets”路径都不会以部署路径作为前缀 我想编写一个IIS重写规则,检查部署路径中是否存在/assets/..路径,如果存在,则相应地重写url。例如,假设我有一个位于/assets/1.jpg的资产,我的部署url是/ui/,我需要一个重写规则,该规则接受请求URI,在其前面加上/ui检查它是否是实际的文件系统文件,如果是,则将请求URI重写为/ui/assets/1.jpg 我

大家可能都知道,将Angular部署到根以外的路径时,asset path存在问题:模板或样式表中存在的任何“/assets”路径都不会以部署路径作为前缀

我想编写一个IIS重写规则,检查部署路径中是否存在
/assets/..
路径,如果存在,则相应地重写url。例如,假设我有一个位于
/assets/1.jpg
的资产,我的部署url是
/ui/
,我需要一个重写规则,该规则接受请求URI,在其前面加上
/ui
检查它是否是实际的文件系统文件,如果是,则将请求URI重写为
/ui/assets/1.jpg

我尝试了以下方法,但我知道这不起作用:


写这样一条规则的正确方法是什么


澄清我希望重写规则适用于任何前缀路径,而不仅仅是
/assets
使用部署url选项构建angular应用程序,如下所示:

ng b --deploy-url /ui/
接下来在IIS下发布应用程序和主机

尝试更新重写规则,如下所示

<rule name="angular asset" stopProcessing="true">
    <match url="(.*)" />
    <conditions logicalGrouping="MatchAll">
        <add input="{REQUEST_URI}" pattern="(.*)"/>
    </conditions>
    <action type="Rewrite" url="/ui/{R:1}" />
</rule>


设置
应用程序_BASE_HREF
是否无效?不,这不是一个解决方案,我希望应用程序基于根“/”。您是否在MVC应用程序中托管angular应用程序?另外,当您在浏览器中加载angular应用程序时,
main.bundle.js
文件是否成功加载?是的,所有操作都很完美,唯一的问题是
/assets/..
路径。我还想说的是,我是一个有棱角的老手,所以棱角不是这里的问题。IIS重写规则无效。@aviapp。请在应答器中尝试更新的url重写规则,该规则可以工作,但仅限于
/assets
路径我希望它适用于任何路径。。。我将澄清我的问题,因为<代码> {Realestuuri} /Case>永远不是一个文件,因为它是以“代码> /资产/……/代码>的形式存在的,并且文件只是一个完整文件系统路径名的形式,如果任何东西<代码> {RealestyFrimeNe} <代码>是我们所追求的东西,但是我们不能在它中间注入一个基本路径。或者至少这是我在问题中要问的。