H.M*_*hir 6 c# iis plesk blazor blazor-webassembly
应用程序 = Blazor Web Assembly PWA 框架 6.0
API = Rest Api .netcore Framework 5.0
网址 = localtesting.mydomain.com
API 地址 = (localtesting.mydomain.com/api) 虚拟目录。
我创建了虚拟目录并将我的 API 上传到虚拟目录中。APi 按预期工作正常
然后我尝试在根文件夹上上传 Blazor WASM,但是当我这样做时,API 停止工作。因为 wasm 正在重定向 URL。
我认为这是由于 blazor 的后果规则由 web.config 处理
我尝试编辑 web.config 但无法让它工作
所以我尝试在 web.config 中添加一条规则,以不拦截 API 请求。
我尝试编辑 web.config 但仍然无法让它工作,因为 blazor 将所有请求重定向到 wwwroot 文件夹
以下是 web.config 文件
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<staticContent>
<remove fileExtension=".blat" />
<remove fileExtension=".dat" />
<remove fileExtension=".dll" />
<remove fileExtension=".json" />
<remove fileExtension=".wasm" />
<remove fileExtension=".woff" />
<remove fileExtension=".woff2" />
<mimeMap fileExtension=".blat" mimeType="application/octet-stream" />
<mimeMap fileExtension=".dll" mimeType="application/octet-stream" />
<mimeMap fileExtension=".dat" mimeType="application/octet-stream" />
<mimeMap fileExtension=".json" mimeType="application/json" />
<mimeMap fileExtension=".wasm" mimeType="application/wasm" />
<mimeMap fileExtension=".woff" mimeType="application/font-woff" />
<mimeMap fileExtension=".woff2" mimeType="application/font-woff" />
</staticContent>
<httpCompression>
<dynamicTypes>
<add mimeType="application/octet-stream" enabled="true" />
<add mimeType="application/wasm" enabled="true" />
</dynamicTypes>
</httpCompression>
<rewrite>
<rules>
<rule name="Serve subdir">
<match url=".*" />
<action type="Rewrite" url="wwwroot\{R:0}" />
</rule>
<rule name="SPA fallback routing" stopProcessing="true">
<match url=".*" />
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
</conditions>
<action type="Rewrite" url="wwwroot\" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
enter code here
Run Code Online (Sandbox Code Playgroud)
通过在 config.Proj 文件中添加以下代码
<location path="." inheritInChildApplications="false">
</location>
Run Code Online (Sandbox Code Playgroud)