边缘安全加速 ESA支持直接导入Github仓库,可通过已有的仓库代码快速启动并部署项目。
前提条件
已开通函数和Pages服务。
拥有一个可用的Github账号和代码仓库。
操作步骤
Pages 与代码管理系统无缝集成,使开发工作流与部署过程之间能顺畅同步。
登录ESA控制台,在左侧导航栏选择 。
在边缘函数页面,单击创建。
选择导入Github仓库页签,单击添加Github账户。
登录Github账号后,在授权页面默认选择All repositories,单击Install & Authorize完成仓库授权。
选择需要构建的对应仓库名,单击下一步。
填写构建信息,单击开始部署。
配置类型
功能
说明
基础配置
生产分支
默认为
main
分支。ESA将按照所选分支自动触发构建并自动部署到生产环境。非生产分支构建
开启后,将对非生产分支(比如非
main
分支)的新提交生成构建版本,但不会自动部署。构建命令
若需先构建,请填写命令,例如
npm run build
。高级配置
根目录
构建命令将在此目录下执行,默认
/
。若是monorepo
,请填写要构建的子项目路径(例如/frontend
或/packages/web
)。静态资源目录
构建产物中将被静态托管的目录,例如:
./public
、./dist
或./build
。您可以在esa.jsonc文件的assets.directory
字段中指定静态资源目录。该配置的优先级高于构建信息中的配置,会覆盖您在此处的配置。函数文件路径
函数的入口文件路径,即实际执行的文件。例如:
./src/index.ts
。您可以在esa.jsonc文件的entry
字段中指定函数文件路径。该配置的优先级高于构建信息中的配置,会覆盖您在此处的配置。Node.js版本
构建使用的 Node.js 版本。修改该配置后,需要重新触发构建才能生效。您可以在
package.json
文件的engines.node
字段中指定Node.js主版本。该配置的优先级高于构建信息中的配置,会覆盖您在此处的配置。环境变量
设置构建过程中可使用的环境变量,可以通过全局对象
process.env
获取。等待系统构建完成后,将为您生成一个公共域名访问链接,可直接访问预览效果。
如何绑定自定义域名
完成创建后,为便于后续访问,您可以将站点接入ESA,然后以记录的形式添加公共访问链接至您的域名DNS记录中,实现自定义域名访问:
系统构建完成后,单击绑定域名为Page绑定站点下的域名记录,用于后续函数访问。
在域名页面,您可以通过配置域名绑定或路由绑定自定义记录。
通过域名配置
域名绑定功能允许您将Pages公共链接至自己的站点域名,在完成域名绑定后,您可以直接使用该域名对函数进行访问。
在域名绑定单击添加域名。
输入需要绑定的自定义记录如
page.example.com
,单击确定。
说明NS接入的域名:绑定域名后,会自动帮您添加一条DNS记录用来绑定边缘函数。
CNAME接入的域名:绑定域名后,会自动生成一个CNAME值,需手动在当前站点对应的域名解析服务商添加CNAME解析。
通过路由配置
路由功能允许用户将某些URL映射到Pages。如为
example.com
站点配置了example.com/a*
的路由规则后,所有与路由规则匹配的路径访问例如/a
、/a1
、/a2
都会由Pages处理,而其他与路由规则不匹配的路径访问例如/b
、/c
、/d
会继续遵循加速回源或缓存的流程。在路由区域,单击添加路由。
填写路由名称如
Pages
,在选择站点列表中选择目标站点,例如:example.com
,默认选择简单模式。路由的前缀和后缀配置可根据业务情况参考下述示例配置:示例1:路由填写
*.example.com/*
,表示任何发送到http://pages.example.com/或http://example.com/
的请求都会被转发到Pages。示例2:路由填写
example.com/a*
,表示任何发送到http://example.com/a
、http://example.com/a1
或http://example.com/api
的请求会被转发到Pages。示例3:路由填写
pages.example.com/api/*
,表示任何发送到http://pages.example.com/api/
及其子路径的请求(例如http://pages.example.com/api/users
或http://pages.example.com/api/products/123
)都会被转发到Pages。
说明如果路由输入的是
*.example.com
或pages.example.com
这种带有前缀的域名,还需要在ESA的DNS记录中手动添加一条记录,否则访问失败。函数路由如果存在多条配置,从上至下一旦有一条匹配成功,则跳出不再执行下面的匹配。
绑定完成后将自动在对应站点下生成一条DNS记录。若该站点为NS接入则可以直接通过自定义域名进行访问,若为CNAME接入则需要在DNS服务商处增加一条CNAME记录。
在浏览器中访问自定义的域名记录即可查看创建的Page。