进阶功能

本文介绍Serverless 应用引擎 SAE(Serverless App Engine)源码部署的进阶功能。

避免使用外网资源

源码部署构建时使用了多种方式避免公网、甚至跨境网络的访问,包括但不限于提前缓存热点资源、换源等。

更换第三方依赖镜像源

源码部署中,使用了多种镜像源来加快依赖拉取速度,包括Ubuntu的apt源、Go语言的Goproxy、Python的pip源、Node.js的npm源、Java的Maven仓库地址、PHP的composer源。镜像源为阿里公网、内网源,以及其他开源镜像源。

说明

有些包管理工具会在代码库的配置文件中,嵌入第三方包管理工具(比如Maven、Gradle)的下载链接,源码部署过程中将自动检测这些配置并替换,最终基于阿里云提供的镜像源进行构建。

托管第三方库版本

源码部署支持托管的第三方工具如下:

源码部署支持管理多版本的运行时环境。更多信息,请参见支持的运行时版本列表

通过正则表达式放行需要访问的文件

正则表达式同样用于批量的文本匹配,在静态页面的源码部署过程中,使用正则表达式对到来的请求进行过滤和筛查,对不符合要求的文件请求进行过滤。示例如下:

  • 放行所有请求:/

  • 仅放行src目录下的所有文件:^/src/.*$

  • 仅放行.html.css.js文件:^.*?\.(html|css|js)$

  • 仅放行.html.css.js文件和/README.md(^.*?\.(html|css|js)$)|/README.md

请根据使用需求,利用正则表达式拼接规则。

参考资料:

测试环境: