全局页面模板
目录结构
|-- global_page_templates/
|-- global_page_templates.yaml
global_page_templates.yaml
文件中可以包含一个或多个全局页面模板。
配置说明
每个全局页面模板是一个包含以下参数的对象:
参数名 | 数据类型 | 是否必选 | 描述 |
---|---|---|---|
name | string | 是 | 页面模板的名称,也是该模板的唯一标识 |
content | string | 是 | 页面模板的 HTML 内容 |
配置示例
- name: page403
content: |
<!doctype html>
<html>
<head>
<title>403 For Bidden</title>
</head>
<body>
::CLIENT_IP::
</body>
</html>
- name: page404
content: |
<!doctype html>
<html>
<head>
<title>404 Not Found</title>
</head>
<body>
::CLIENT_IP::
</body>
</html>
此配置定义了两个全局页面模板,分别用于 403 和 404 错误页面。
使用示例
更新配置到 OpenResty Edge 中:
edge-config https://192.168.1.1 -s -t 2051e780-1897-4ea0-92b4-2c2f0169aa94 -l global_page_templates -i /root/oredge-configs
从 OpenResty Edge 中导出配置:
edge-config -u https://192.168.1.1 -s -t 2051e780-1897-4ea0-92b4-2c2f0169aa94 -E -l global_page_templates
示例中均使用 -l global_page_templates
来指定只导入/导出全局页面模板相关的配置。
注意事项
全局页面模板是一个全局配置,为了保持与多个本地配置的兼容性,在更新配置时不会执行删除操作。
每个全局页面模板必须有一个唯一的名称。
模板内容可以包含特殊占位符,如
::CLIENT_IP::
,这些占位符会在实际使用时被替换为相应的值。在更新配置时,工具会比较新旧配置来确定是否需要更新。如果模板内容有变化,则会执行更新操作。
在导入配置时,工具会先检查配置的有效性,确保每个模板都包含
name
和content
字段。在导出配置时,工具会格式化 YAML 内容,保持模板内容的可读性。
页面模板可以被其他功能引用,如错误页面配置、自定义响应等。