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目录结构