问题描述:使用Vue+IIS的History模式发布网站后无法通过url路径直接访问,必须进入首页,然后使用页面内部的引导按钮才可以,直接使用URL访问提示404,然而在开发环境无此问题。
解决方案:
第一步:安装IIS URL Rewrite模块
下载并安装URL Rewrite 2.1(URL Rewrite : The Official Microsoft IIS Site)
安装完成后,重启IIS服务
💡 提示:确保IIS中已安装"URL重写"模块(在IIS管理器中应能看到"URL重写"图标)
第二步:创建web.config文件
在Vue项目dist目录中创建web.config文件(如果不存在),内容如下:
<?xml version="1.0"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="Handle History Mode">
<match url=".*" />
<conditions>
<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>配置完成后重启问题就解决了。
