本文介绍如何在函数计算控制台为Web应用绑定自定义域名。
前提条件
操作步骤
路由匹配规则
- 精确匹配:请求的路径和设置的路径完全一致才可以触发对应的函数。
假设,设置路径为/a,对应的服务为s1,对应函数为f1,对应的版本为1。那么只有来自/a路径的请求才能触发版本1下的f1函数执行,来自/a/路径的请求无法触发版本1下的f1函数执行。
- 模糊匹配:支持使用通配符(*)设置路径,且通配符(*)只能放到路径的最后。
假设,设置路径为/login/*,对应服务为s2,对应函数为f2,对应版本为1。那么只要是路径前缀是/login/(例如/login/a、/login/b/c/d)的请求都会触发版本1下的f2函数执行。
- 若一个自定义域名下配置了多个路由,则精确匹配的优先级大于模糊匹配的优先级。
- 模糊匹配时满足最长前缀匹配原则。
假设,配置了/login/a/*和/login/*两个路径,自定义域名为api.app.com,请求URL为api.app.com/login/a/b。此时,该请求URL都满足设置的路径。但是根据最长前缀匹配原则,最终匹配的路径应该是/login/a/*。
示例
路由规则 | 路径 | 服务名称 | 函数名称 | 版本 |
---|---|---|---|---|
路由规则1 | / | s1 | f1 | 1 |
路由规则2 | /* | s2 | f2 | 2 |
路由规则3 | /login | s3 | f3 | 3 |
路由规则4 | /login/a | s4 | f4 | 4 |
路由规则5 | /login/* | s5 | f5 | 5 |
请求URL | 匹配的服务名称 | 匹配的函数名称 | 匹配的版本 | 匹配的路径 |
---|---|---|---|---|
api.app.com | s1 | f1 | 1 | / |
api.app.com/user | s2 | f2 | 2 | /* |
api.app.com/login | s3 | f3 | 3 | /login |
api.app.com/login/a | s4 | f4 | 4 | /login/a |
api.app.com/login/a/b | s5 | f5 | 5 | /login/* |
api.app.com/login/b | s5 | f5 | 5 | /login/* |
结果验证
设置成功后,您可以通过以下方式访问自定义域名进行测试。
- 方法一:通过命令行
curl URL
测试。例如curl api.app.com/login
。 - 方法二:通过浏览器测试。
在浏览器地址栏中输入请求URL,然后按回车键可以验证是否调用了目标函数。