将 blazor webassembly 部署到 iis 10 上

第一步 发布blazor wasm

在工程上右键选择 发布,发布到文件夹,默认到 bin/debug/release/publish 下,然后点 【发布】按钮,发布成功后,在 publish 文件夹内能看到 wwwroot 和 web.config。

第二步 将发布的文件夹拷贝到服务器上,编辑绑定

要求服务器上安装相应的.net 运行时,我的是.net core 3.1

第三步 解决跨域问题

blazor wasm 需要通过 HttpClient 跟其他 web server 进行 GET POST等调用,需要 web server 允许跨域

注意:因文件夹无权限也可能报 cors拒绝访问错误!

我在服务器上的日志中发现了这个问题,为网站的文件夹(如果有)分配 IIS_IUSRS 完全控制权限。

第四步 压缩文件,提高加载速度

我的 blazor wasm 完全加载要13M,如果不压缩首次加载需要90秒。

publish时已经有了 gz 和 br 两种压缩文件,需要在iis上启动压缩,并在web.config中设置。

iis上启动压缩需要安装 Microsoft IIS Compression。

web.config 设置压缩参考官方例子

gzip压缩后,下载文件大小变为了5M,时间38秒。

如果web api 的json较大,建议启动 动态压缩

总结

blazor wasm 首次加载还是慢的可以,好在浏览器缓存后再请求就秒快了。据说 .net 6 把文件打包压缩且优化了系统文件的尺寸加载速度提高了不少。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值