abp.io和vue项目部署在iis同一站点,spa
1、HttpApiHostModule.cs中修改:

app.UseDefaultFiles();
2、发布后端代码到iis中,并安装urlrewrite(网上有教程)
3、修改web.config

<rewrite>
<rules>
<rule name="Vue-Html5-Routes" stopProcessing="true">
<match url=".*" />
<conditions logicalGrouping="MatchAll">
<!--如果请求的不是文件,则需要进行url重写-->
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
<add input="{REQUEST_FILENAME}" pattern=".*\.[\d\w]+$" negate="true" />
<!--如果请求的不是api,则需要进行url重写-->
<add input="{REQUEST_URI}" pattern="api/*" negate="true" />
<!--如果请求的不是swagger,则需要进行url重写-->
<add input="{REQUEST_URI}" pattern="swagger/*" negate="true" />
</conditions>
<!--将符合条件的请求重写到网站的根路径,但浏览器上显示的网址不变-->
<action type="Rewrite" url="/" />
</rule>
</rules>
</rewrite>
4、发布vue,npm run build,将dist中的文件拷贝到后台的wwwroot目录


5、访问前端路由即可

想要访问swagger,直接http://项目地址/swagger

iis目录结构


浙公网安备 33010602011771号