zoukankan      html  css  js  c++  java
  • 深入浅出Blazor webassembly之一种简单的部署方法

    在Blazor WebAssembly开发模式下, 浏览器一般需要下载多达10M的资源, 主要是 .net 的dll 文件, 即使是在企业局域网内访问速度也不快. 发布模式可以明显减小资源文件的大小.

    这里介绍使用官方提供的 blazor-devserver.exe, 作为企业内的部署服务器, 主要优点有:

    ⒈ 使用非常方便

    2. 支持url rewrite,  以模版项目为例, counter 页面地址http://localhost:5000/counter , 如果部署到 vs code 的 live server插件下, 直接访问 counter 页面, 会报 404 Get 错误, 必须先访问根地址, 然后导航到 counter页面才行. 而使用 blazor-devserver.exe , 就可以直接访问 counter 页面.

    如果是面向互联网的blazor wsam, 还是推荐 nginx 服务器, 参考 https://www.endycahyono.com/article/hosting-blazor-webassembly-in-nginx

    假设项目名为 blazor2app , 完整步骤如下:

    1. 进入项目根目录, 使用发布命令进行编译 , 按照 release 配置模式编译

        dotnet publish -c Release

       加上 Release 选项后,  进入publish 输出目录,  可以看到wwwroot目录,  

    wwwroot目录下有多个子目录, 其中文件会有压缩版和非压缩版本

     2. 命令行 cd 到 publish 目录, 然后启动 blazor-devserver

      blazor-devserver.exe serve --applicationpath ".wwwroot\_frameworklazor2app.dll"

     如果是subdirectory子目录形式, 还可以加上 --pathbase="/CoolApp" 参数

    可以看出下载资源减少到 6.1MB.

    =====================

    更多参考

    =====================

    更多部署优化, 可参考 https://www.meziantou.net/optimizing-a-blazor-webassembly-application-size.htm

  • 相关阅读:
    CSS之边界塌陷
    不用for loop循环一个读取一个文件
    CSS之毗邻选择器与普通兄弟选择器的区别
    python 一行代码
    Regex Golf 练习记录
    c实现双向链表
    c实现单向链表
    c++实现 String 类
    js获取指定小时日期格式化
    git clone Timed out 解决
  • 原文地址:https://www.cnblogs.com/harrychinese/p/blazor_depoly.html
Copyright © 2011-2022 走看看