Overview
Blazor applications may fail to load CSS, JavaScript, or other static assets after deployment. This guide covers common causes and solutions for static asset issues on Plesk Windows hosting.
Symptoms
- Unstyled page (CSS not loading)
- JavaScript errors in browser console
- 404 errors for _framework files
- Missing images or fonts
- "Failed to find a valid digest" errors (WebAssembly)
Solution 1: Verify Published Files
Ensure all static assets are included in your publish output:
dotnet publish -c Release -o ./publish
Check that the wwwroot folder and _framework folder (for WASM) are present.
Solution 2: Enable Static Files in IIS
Add or verify web.config has static file handling:
<configuration>
<system.webServer>
<staticContent>
<remove fileExtension=".json" />
<mimeMap fileExtension=".json" mimeType="application/json" />
<remove fileExtension=".wasm" />
<mimeMap fileExtension=".wasm" mimeType="application/wasm" />
<remove fileExtension=".woff" />
<mimeMap fileExtension=".woff" mimeType="font/woff" />
<remove fileExtension=".woff2" />
<mimeMap fileExtension=".woff2" mimeType="font/woff2" />
</staticContent>
</system.webServer>
</configuration>
Solution 3: WebAssembly Compression Issues
If using Blazor WebAssembly, compressed files (.br, .gz) may not serve correctly.
Add to web.config:
<staticContent>
<remove fileExtension=".br" />
<mimeMap fileExtension=".br" mimeType="application/brotli" />
<remove fileExtension=".gz" />
<mimeMap fileExtension=".gz" mimeType="application/gzip" />
</staticContent>
Solution 4: Fix Integrity Check Failures
WebAssembly integrity errors often occur when files are modified during upload.
Option A: Use binary mode for FTP transfers
Option B: Disable integrity checking in index.html:
<script src="_framework/blazor.webassembly.js" autostart="false"></script>
<script>
Blazor.start({
loadBootResource: function (type, name, defaultUri, integrity) {
return defaultUri;
}
});
</script>
Solution 5: Base Path Configuration
If deploying to a subdirectory, set the base path in index.html or _Host.cshtml:
<base href="/myapp/" />
And in Program.cs:
builder.WebHost.UseStaticWebAssets();
Solution 6: Clear Browser Cache
After deployment, clear browser cache or use incognito mode to test. Old cached files can cause mismatches.
Solution 7: Check File Permissions
Ensure all files in wwwroot have read permissions:
- In Plesk, go to Files
- Navigate to httpdocs/wwwroot
- Verify files are accessible
Still Having Issues?
Check browser Developer Tools (F12) → Network tab to see which specific files are failing to load and their error codes.