全局页面模板

目录结构

|-- global_page_templates/
  |-- global_page_templates.yaml

global_page_templates.yaml 文件中可以包含一个或多个全局页面模板。

配置说明

每个全局页面模板是一个包含以下参数的对象:

参数名数据类型是否必选描述
namestring页面模板的名称,也是该模板的唯一标识
contentstring页面模板的 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 来指定只导入/导出全局页面模板相关的配置。

注意事项

  1. 全局页面模板是一个全局配置,为了保持与多个本地配置的兼容性,在更新配置时不会执行删除操作。

  2. 每个全局页面模板必须有一个唯一的名称。

  3. 模板内容可以包含特殊占位符,如 ::CLIENT_IP::,这些占位符会在实际使用时被替换为相应的值。

  4. 在更新配置时,工具会比较新旧配置来确定是否需要更新。如果模板内容有变化,则会执行更新操作。

  5. 在导入配置时,工具会先检查配置的有效性,确保每个模板都包含 namecontent 字段。

  6. 在导出配置时,工具会格式化 YAML 内容,保持模板内容的可读性。

  7. 页面模板可以被其他功能引用,如错误页面配置、自定义响应等。

相关文档