前提,React发布IIS后具备访问初始页面能力,但是在进行跳转时失效
产生原因:
React打包发布后在非根路径访问会产生404实际访问会以访问文件形式访问地址URL+路由
解决方案:
通过rewrite插件重定向URL
插件下载地址:
URL Rewrite : The Official Microsoft IIS Site
修正默认Webconfig文件:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<directoryBrowse enabled="false" />
<rewrite>
<rules>
<rule name="React Routes" 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>