部署

当你需要部署你的应用程序时,Qwik 提供了现成的集成,使得这个过程非常简单!

npm run qwik add

适配器和中间件

Qwik City 中间件是将服务器渲染框架(如 Cloudflare、Netlify、Vercel、Express 等)与 Qwik City 元框架连接起来的胶水代码。

生产构建

当项目添加了新的集成时,会在 package.json 文件中添加一个 build.server 脚本。该脚本用于将项目构建为生产环境。

你只需要运行以下命令:

npm run build

在幕后,build 脚本将执行 build.serverbuild.client 脚本。

高级用法

requestHandler() 实用程序是上述每个中间件包使用的工具,用于将其请求/响应转换为 Qwik City 使用的标准格式。可以使用此函数为特定的服务器框架提供中间件。

如果缺少中间件并且希望添加它,请查看如何使用 requestHandler() 实用程序处理上述每个中间件源代码的请求。更好的是,我们非常欢迎您的中间件贡献!欢迎提交 PR

添加新的部署

感谢您有兴趣为 Qwik 添加部署集成!我们非常乐意帮助您入门。在我们深入之前,如果已经有了您正在寻找的部署方式,我们非常欢迎您为其做出贡献。如果该部署方式尚不可用,让我们来添加它!

首先,最好是复制一个现有的适配器和中间件,并根据您的需求进行修改。部署由几个不同的部分组成:

添加适配器

适配器是用于特殊构建配置所需的 Vite 配置的总结术语。每个服务器,无论是云服务还是自定义服务器,都有自己独特的构建配置,用于特定输出服务器使用。例如,CloudflareNetlifyNode.js 服务器 都有自己的构建配置。

适配器实际上是一个扩展基本配置的 Vite 配置。基本配置对于所有适配器都是相同的,适配器配置是每个服务器的独特部分。

添加中间件

中间件是将服务器渲染框架(如 Cloudflare、Netlify、Vercel、Express 等)与 Qwik City 元框架连接起来的胶水代码。每个中间件负责处理来自服务器的请求和响应,并将其转换为 Qwik City 使用的标准格式。

幸运的是,Qwik City 使用了标准化的 RequestResponse 接口,因此中间件通常非常简洁。

对于中间件,你会注意到每个中间件都调用了通用的 @builder.io/qwik-city/middleware/request-handler 包。每个中间件的工作是将请求和响应转换为 Qwik City 请求处理程序包使用的标准格式。

添加到 Starter CLI

下一步是将新的适配器添加到 Starter CLI。对于这一步,最好在 Discord 上联系核心团队以帮助您入门。CLI 是添加新适配器的绝佳位置,因为它是测试新适配器并确保其按预期工作的绝佳方式。

Contributors

Thanks to all the contributors who have helped make this documentation better!

  • adamdbradley
  • samijaber
  • reemardelarosa
  • mhevery