部署

当您准备部署应用程序时,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 请求处理程序包使用的标准化格式。

添加到入门 CLI

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

贡献者

感谢所有帮助改进此文档的贡献者!

  • adamdbradley
  • samijaber
  • reemardelarosa
  • mhevery
  • igorbabko
  • mrhoodz