项目一开始的时候使用的是hash模式,但是hash模式小url需要带"#",看起来不舒服,而且还在某些场合小会破坏url ( 比如页面嵌入小程序,微信分享)所以就改用了history模式.前端这边只需要在router的文件夹下的index.js
mode:'history';
我们使用的iis 服务 (后端没有搞过)于是就一起来搞得
首先需要安装 url rewrite 模块到iis
https://www.iis.net/downloads/microsoft/url-rewrite
1.在 iis 服务器 找到 url重写
点击打开添加重写规则 选择右上角的添加规则
添加模式 *
然后点击右侧 应用就可以自动生成 web.config
然后在web.config文件中添加如下配置 <?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <rewrite> <rules> <rule name="API Rule" stopProcessing="true"> <match url="^(api|account|manage)(.*)$" /> <action type="None" /> </rule> <rule name="Angular Rule" stopProcessing="true"> <match url="(.*)" /> <conditions logicalGrouping="MatchAll"> <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" /> <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" /> </conditions> <action type="Rewrite" url="/" /> </rule> </rules> </rewrite> </system.webServer> </configuration>
这里有其他服务所对应的配置
https://router.vuejs.org/zh/guide/essentials/history-mode.html