配置跨源资源共享 (CORS)

配置跨源资源共享 (CORS) 以允许来自另一个源的 Web 应用程序访问 Domino Web 服务器上的资源。

关于此任务

出于安全原因,大多数浏览器都遵守同源策略规则。此规则限制从一个源装入的 Web 页面访问另一个服务器(或源)上的资源。CORS 允许您定义同源策略的例外情况。大多数浏览器都支持 CORS。

注:
  • 从 Domino 10.0.1 FIX Pack 2 开始支持 CORS。
  • Windows、Linux 和 IBM AIX 均支持 CORS。IBM i 不支持 CORS。

例如,假定从服务器 A(Apache 服务器)装入的 Web 应用程序向服务器 B(Domino 服务器)发送 REST API 请求。在服务器 B 上配置 CORS 可允许从服务器 A 装入的 Web 页面向服务器 B 发送 REST API 请求。

CORS 适用于 Domino Access Services (DAS) API 和 Domino 上托管的其他类型 REST API。其实,CORS 适用于任何类型的 Domino HTTP 资源。

完成以下步骤以在 Domino 服务器上配置 CORS。

过程

  1. 在 Domino 服务器的“服务器”文档中启用 CORS:
    注: 或者,在“Web 站点”文档(“配置”选项卡)中启用 CORS。
    1. 在 Domino 目录中打开“服务器”文档。(不支持通过“因特网站点”文档进行配置)。
    2. 选择因特网协议 > HTTP 选项卡。
    3. 在 DSAPI 部分中,将以下值添加到 DSAPI 过滤器文件名字段:
      • (Windows) ncorsext
      • (所有其他平台)corsext
  2. 创建定义可访问 Domino 服务器的源的 JSON 文件:
    注: 如果通过“Web 站点”文档启用了 CORS,请在与该 Web 站点相关联的每个服务器上完成此步骤以及下一个步骤。
    1. 在服务器上的 ...Domino\data\domino 中创建新文件夹 cors
    2. cors 文件夹中创建新文件 cors-rules.json
    3. cors-rules.json 中定义 Domino 服务器可以访问的源。有关详细信息,请参阅CORS JSON 配置
  3. 停止并重新启动 HTTP 服务器任务:
    tell http quit 
    load http  

结果

如果 HTTP 服务器启动时出现以下消息意味着 CORS 已正确配置:
HTTP 服务器:DSAPI CORS 过滤器已成功装入
如果 HTTP 服务器启动时出现以下消息意味着 CORS 配置存在问题:
HTTP 服务器:未能装入 DSAPI 模块 ncorsext