
# 场景一：公网访问CAE组件
#### 场景描述
当CAE组件需被CAE环境外的对象（如外部用户、第三方系统或运维工具）访问时，需启用公网访问能力。
您可以在CAE配置从环境外部访问本组件的端口，打通访问通道，配置完成后即可从公网访问CAE组件。
本章为您介绍从公网访问CAE组件。
#### 约束与限制
该功能仅支持华北-北京四、华南-广州、华东-上海一、中东-利雅得、土耳其-伊斯坦布尔、非洲-约翰内斯堡、拉美-墨西哥城二、拉美-圣保罗一区域创建的新环境。
#### 前提条件
- 已[创建环境](https://support.huaweicloud.com/usermanual-cae/cae_03_0053.html)。
- 已[创建应用](https://support.huaweicloud.com/usermanual-cae/cae_03_0002.html)。
- 已[创建组件](https://support.huaweicloud.com/usermanual-cae/cae_03_0005.html)。在本实践中，组件名称为cae-test，组件实例规格不低于0.5Core 1GiB，组件来源为软件包，组件的端口为8080。
 
#### 步骤一：配置访问域名
1. [登录CAE控制台](https://console.huaweicloud.com/cae/)。
2. 在左侧导航栏中选择"系统设置"。
3. 单击"系统网络配置"模块中的"编辑"。
4. 选择"入网配置"页签。
5. 单击"添加域名后缀"，参考[表1]设置域名和证书。
   
   这里的入网参数配置分为两种情况，分别为http场景和https场景。
   1. http场景参考[表1]配置入网参数。
       表1http场景配置入网参数说明 
      | 参数   | 参数说明                                                                                                                                                                                                                                                                                                                                                                                                                                            | 本实践取值样例    |
      |:---|:---|:---|
      | 域名后缀 | 输入域名。 最多创建10个域名。域名至少包含两个字符串，字符串间以点（.）分隔，字符串只能由英文字母、数字、中划线、小数点和特殊字符组成。字符串必须以英文字母、数字或\*开头，不能以中划线结尾。\*只能出现在开头且必须以\*开头。 示例：\*.component.example.com 说明： 添加域名时，需根据实际需求填写泛域名或全域名，避免因域名格式错误导致网络访问异常。关于全域名和泛域名的填写规则，请参见云应用引擎《常见问题》中的"配置域名时，如何避免因格式错误导致访问异常？"章节。                                                                  | \*.abc.com |
      | 证书   | 用https访问网站时，建议绑定证书，提高网站的安全性。 在下拉选项中选择需要绑定的证书。 若当前下拉选项中没有可以绑定的证书，则单击"添加新证书"，参考[设置访问证书](https://support.huaweicloud.com/usermanual-cae/cae_03_0039.html)设置证书信息。                                                                                                                                                                                                                         | 该项不选择      |
      | 重定向  | 重定向开关可以控制域名访问的相关行为，让符合特定条件的访问请求跳转到其他指定的地址。 - 当开启重定向功能后，需要进一步配置重定向的目标地址等详细信息。 访问该域名后缀下的地址时，如果请求所使用的域名匹配当前配置的域名后缀，那么就会按照预先设定的规则，将请求重新发送到另一个目标地址。   - 当关闭重定向功能后，访问该域名后缀下的地址时，请求会按照原本的配置直接访问对应的CAE组件服务，而不会发生跳转。   | 关闭         |
         
      
   
   2. https场景参考[表2]配置入网参数。
       表2https场景配置入网参数说明 
      | 参数   | 参数说明                                                                                                                                                                                                                                                                                                                                                                                                                                                 | 本实践取值样例                                                                                       |
      |:---|:---|:---|
      | 域名后缀 | 输入域名。 最多创建10个域名。域名至少包含两个字符串，字符串间以点（.）分隔，字符串只能由英文字母、数字、中划线、小数点和特殊字符组成。字符串必须以英文字母、数字或\*开头，不能以中划线结尾。\*只能出现在开头且必须以\*开头。 示例：\*.component.example.com 说明： 添加域名时，需根据实际需求填写泛域名或全域名，避免因域名格式错误导致网络访问异常。关于全域名和泛域名的填写规则，请参见云应用引擎《常见问题》中的"配置域名时，如何避免因格式错误导致访问异常？"章节。                                                                    | \*.abc.com                                                                                    |
      | 证书   | 用https访问网站时，建议绑定证书，提高网站的安全性。 在下拉选项中选择需要绑定的证书。 若当前下拉选项中没有可以绑定的证书，则单击"添加新证书"，参考[设置访问证书](https://support.huaweicloud.com/usermanual-cae/cae_03_0039.html)设置证书信息。                                                                                                                                                                                                                            | 单击"添加新证书"，设置证书信息后，在此处选择一个证书。 本实践取值样例为：**certificate** -**test** |
      | 重定向  | 重定向开关可以控制域名访问的相关行为，让符合特定条件的访问请求跳转到其他指定的地址。 - 当开启重定向功能后，需要进一步配置重定向的目标地址等详细信息。 访问该域名后缀下的地址时，如果请求所使用的域名匹配当前配置的域名后缀，那么就会按照预先设定的规则，将请求重新发送到另一个目标地址。   - 当关闭重定向功能后，访问该域名后缀下的地址时，请求会按照原本的配置直接访问对应的CAE组件服务，而不会发生跳转。   | 关闭                                                                                            |
         
      
    
   
   
6. 单击"保存"。
 
#### 步骤二：配置环境外部访问本组件
1. 在CAE控制台，左侧导航栏中选择"组件配置"。
2. 在"组件配置"页面上方的下拉框中选择需要操作的组件：cae-test。
3. 单击"访问方式"模块中的"编辑"。
4. "从环境外部访问本组件"中，参考[表3]设置"访问域名"。
   
    表3组件域名配置 
   | 参数    | 参数说明                                                                                                                                                                                                                                                                                                                                                                                               | 本实践取值样例                                                                                                                                                                                                     |
   |:---|:---|:---|
   | 环境外访问 | 1. 在下拉选项框中选择环境级别。 环境级别的选项来源：在配置入网信息时，您所设置的域名。 示例：\*.component.example.com   2. 填写环境外访问组件域名。 示例：compA-dev    | 1. 选择步骤一中配置的域名**\*.abc.com**  2. 填写**cae-test**   |
   | 环境内访问 | 环境内访问组件域名不支持修改。 系统默认环境内访问组件域名的命名规则：*{组件ID}* .*{应用ID}* .internal.*{环境ID}* .*{regionID}*.cae.com 示例：compA.appA.internal.16dd810\*\*\*\*\*\*\*496d.cn-north-7.cae.com                                                                                                                                                                       | 该项保持默认                                                                                                                                                                                                      |
      
   
   
5. 单击"添加转发策略"，设置转发策略。 
   表4http场景转发策略配置 
   | 参数      | 参数说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | 本实践取值样例  |
   |:---|:---|:---|
   | URL匹配规则 | 支持前缀匹配、正则匹配和精准匹配。 - **前缀匹配**：例如映射URL为/healthz，只要符合此前缀的URL均可访问。例如：/healthz/v1，/healthz/v2。  - **正则匹配** ：可设定映射URL规范，例如：规范为**/\[A-Za-z0-9_.-\]+/test**。只要符合此规则的URL均可访问，例如：/abcA9/test，/v1-Ab/test。正则匹配规则支持POSIX与Perl两种标准。  - **精准匹配**：表示精准匹配，只有完全匹配上才能生效。例如：映射URL为/healthz，则必须为此URL才能访问。   | 前缀匹配     |
   | URL     | URL（统一资源定位符）的格式通常为**协议://IP:端口/路径?参数** 配置URL后，转发策略可根据 "路径"（如/a/b或/c/d），将请求精准转发到对应的业务接口。 命名规则：以/开头，由英文字母、数字或特殊字符_\~';@\^-%#\&$.\*+?,=!:\|/()\[\]{}组成，最长支持128个字符。例如：/healthz。 当仅填写/时，则会匹配根路径及该路径下的所有子路径的请求。                                                                                                                                                                                                                                        | /        |
   | 组件名称    | 您选定的需要配置访问方式的组件的名称。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | cae-test |
   | 监听端口    | 监听端口用于接收外部（如VPC内ECS、其他CAE组件）访问请求的端口，需与CAE组件自身提供服务的端口保持一致（无端口映射时），确保请求能精准路由至目标组件的服务入口。 取值范围\[1，65535\]。                                                                                                                                                                                                                                                                                                                                                                                                          | 8080     |
      
   
   
6. 设置完成后，单击"确定"。
7. 使配置生效。 
   - 如已完成组件部署，单击页面上方"生效配置"。在右侧弹框中确认配置信息，并单击"确定"，使配置生效。
   
   - 如未完成组件部署，单击页面上方"配置并部署组件"，在右侧弹框中单击"确定"待部署执行完成后，配置生效。
   
   
   
   
8. 配置生效后，在访问方式模块上会显示公网地址访问域名：cae-test.abc.com。
 
#### （可选）步骤三：在本地设备配置hosts，将特定域名解析为指定IP
若步骤一中配置的访问域名，未通过公共域名服务提供商完成备案与DNS解析配置（即该域名无法通过公网DNS服务器查询到对应IP），则需在需要访问CAE组件的本地设备（如个人电脑、VPC内ECS）上，手动配置hosts文件，添加"域名与CAE组件公网/内网IP的映射关系"，以实现本地设备通过该域名访问CAE组件。
若步骤一中配置的访问域名已通过公共域名服务提供商完成备案与DNS解析配置，则跳过此步骤。
1. **获取创建环境时选择的ELB的公网IP**
   
   1. 在CAE控制台，左侧导航栏中选择"概览"。
   
   2. 在概览页面的页面最下方，单击负载均衡器的名称，跳转到ELB控制台。
   
   3. 选择"基本信息"页签。
   
   4. 在基本信息页面中，找到并复制该ELB的IPv4公网地址。本实践取值样例：198.51.100.xx。
   
   
   
   
2. **获取步骤二中配置的公网地址** **访问域名**
   
   1. 在CAE控制台，左侧导航栏中选择"组件配置"。
   
   2. 在组件配置页面，找到并复制访问方式模块上显示的公网地址访问域名：cae-test.abc.com。
   
   
   
   
3. **配置hosts文件，将特定域名解析为指定IP**
   
   1. 打开本地设备的hosts文件。
   
   2. 按照hosts文件配置规则：
      ```
      [目标IP地址] [域名]  # 可选注释（说明该映射的用途）
      ```
      在新的一行输入：
      ```
      198.51.100.xx cae-test.abc.com  # 本地映射：CAE组件公网IP对应的公网地址访问域名
      ```
      
   
   3. 保存hosts文件。
   
   
   
   
 
#### 步骤四：公网访问CAE组件
1. 在CAE控制台，左侧导航栏中选择"组件配置"。
2. 在组件配置页面，找到并复制访问方式模块上显示的公网地址访问域名：cae-test.abc.com。
3. 打开本地浏览器，在地址栏中输入已复制的公网地址。 
   这里访问公网地址分为两种情况，分为http场景和https场景。
   1. http场景访问公网地址：http://cae-test.abc.com
   
   2. https场景访问公网地址：https://cae-test.abc.com
    
   
   
4. 按下回车，即可成功访问目标CAE组件。
 
