管理与编程指南


为使用 Web 服务器 API 而配置 Net.Data

使用 Web 服务器应用程序编程接口 (API) 而不是 CGI 可以很大地改进 Net.Data 的 性能。Net.Data 支持以下服务器 API:

有关每个 API 的详情,参见使用 FastCGI以及您所使用的 Net.Data 版本的 自述文件。

要求: 要以 ISAPI、或 NSAPI 方式运行 Net.Data, 必须重新配置 Web 服务器来将 Net.Data DLL 或共享库用作其服务伪指令。重新配置之后,您必须重新启动 Web 服务器以使 Net.Data 初始化文件的更改生效。缺省情况 下,Net.Data 以 CGI 方式运行。

将 Net.Data 配置为一次仅使用一个接口。例如, 若将 Web 服务器配置为使用 FastCGI 执行 Net.Data,就不要还将 Web 服务器配置为使用 ISAPI 或另一接口来执行 Net.Data。若您想稍后运行使用另一接口(如 NSAPI)的 Net.Data, 则单独针对新接口重新配置 Web 服务器。

以下章节描述了如何配置 Net.Data 和 Web 服务器以运行 Web 服务器 API 方式。其中 提供了一般步骤和示例,但它们可能和您的操作系统有所不同。参见针对您所使用的操作系统 的 Net.Data 的自述文件,以获取特定的指示信息。

要配置 Apache API:

  1. 停止 Web 服务器。
  2. 确保 libmod_db2www.so/opt/netdata/lib 目录中。
  3. 仅对于 Linux :将 libmod_db2www.so (Linux) 或 mod_db2www.dll (WinNT) 复制至 /apache/modules 目录。
  4. 将服务语句添加至 Web 服务器的配置文件 (httpd.conf) 以调用 API。

    例如:

    LoadModule db2www_module /pot/netdata/lib/libmod_db2www.so AddHandler 
         db2 www_handler .db2www
    

    参见针对您所使用的操作系统的 Net.Data 的自述文件,以获取特定的文件和目录名称。

  5. 重新启动 Web 服务器。

APAPI 仅在 Windows NT、Linux 和 Linux s/390 上受支持。

要配置 ISAPI:

  1. 停止 Web 服务器。
  2. 将 Net.Data 所附带的、用于 ISAPI 的 DLL 复制到服务器的子目录中。例如:
     /inetsrv/scripts/dtwisapi.filetype
    

    其中的 filetype对 于 Windows NT 和 OS/2 来说是 .dll,对于 UNIX 操作系统来说则是 .o

    参见针对您所使用的操作系统的 Net.Data 的自述文件,以获取特定的文件和目录名称。

  3. 因为 ISAPI 绕过了 CGI 处理,因此在表和链接中不需要 URL 的 cgi-bin/db2www/ 部分。相反,需要使用 dtwisapi.filetype。例如,如果以下 URL 将 Net.Data 作 为 CGI 程序调用:
    http://server1.stl.ibm.com/cgi-bin/db2www/test1.dtw/report
    

    那么您应使用以下 URL 将 Net.Data 作为 ISAPI 插件来调用:

    http://server1.stl.ibm.com/scripts/dtwisapi.dll/test1.dtw/report
    
  4. 若您在 MACRO_PATH 中指定的其中一个目录或 Web 服务器的当前目录下的子目录 /order/ 中存储了宏 test1.dtw, 则使用以下 URL 来以 CGI 方式调用 Net.Data:
    http://server1.stl.ibm.com/cgi-bin/db2www/orders/test1.dtw/report
    

    那么,在 ISAPI 方式中调用 Net.Data 的等价的 URL 是:

    http://server1.stl.ibm.com/scripts/dtwisapi.dll/orders/test1.dtw/report
    
  5. 重新启动 Web 服务器。

要配置 NSAPI:

  1. 停止 Web 服务器。
  2. 将 Net.Data 所附带的、用于 NSAPI 的 DLL 复制到服务器目录中。例如:
     /netscape/server/bin/httpd/dtwnsapi.filetype
    

    其中的 filetype对 于 Windows NT 和 OS/2 来说是 .dll,对于 UNIX 操作系统来说则是 .o

    参见针对您所使用的操作系统的 Net.Data 的自述文件,以获取特定的文件和目录名称。

  3. 使用下面列出的更改来修改您的服务器配置文件。参见针对您所使用的操作系统的 Net.Data 的 自述文件或程序目录,以了解操作系统之间的区别。
    obj.conf 添加到文件开头:
    Init fn="load-modules" shlib="<path>dtwnsapi.dll" funcs=dtw_nsapi
    
    obj.conf 添加到服务命令:
    Service fn="dtw_nsapi" method=(GET|HEAD|POST)
      type="magnus-internal/d2w"
     
    
    mime.types 添加此类型,其中 d2w 是宏的缺省扩展名。您可以指定任意的三个字符的组合。
    type=magnus-internal/d2w exts=d2w
    
  4. 将 Net.Data 宏从 netdata/macro 目录移动到服务器的根文档 目录:
    /netscape/server/docs/
    
  5. 将服务器的根文档目录添加到初始化文件的 MACRO_PATH 语句中。这个更改 告诉 Net.Data 在哪里查找宏。
  6. 因为 NSAPI 绕过了 CGI 处理,因此在表和链接中不需要 URL 的 cgi-bin/db2www/ 部 分。服务器知道具有 d2w 文件类型的文件是 Net.Data 宏,因为您在 更改 Netscape 配置文件时对它进行了定义。例如,以下 URL 将 Net.Data 作 为 CGI 程序调用:
    http://server1.stl.ibm.com/cgi-bin/db2www/test1.dtw/report
    

    而以下 URL 将 Net.Data 作为 NSAPI 程序调用:

    http://server1.stl.ibm.com/test1.dtw/report
    
  7. 重新启动 Web 服务器。

如果将 Net.Data 宏放在几个目录中,那么最后的三个步骤改为:

  1. 将目录和其中包含的 Net.Data 宏移动到服务器的根文档目录。
  2. 更新初始化文件中的 MACRO_PATH 变量来包括宏所在的所有目录和子目录。
  3. 修改指向这些 Net.Data 宏的链接和表,保留它们的目录名。例如, 当以 CGI 方式运行时,以下 URL 调用存储在 /orders/ 目录中的 Net.Data 宏。
    http://server1.stl.ibm.com/cgi-bin/db2www/orders/test1.dtw/report
    

    经过修改后, 在 NSAPI 方式中调用 Net.Data 的 URL 要短一些,但仍保留了目录名:

    http://server1.stl.ibm.com/orders/test1.dtw/report
    


[ 页的顶部 | 上一页 | 下一页 | 目录 | 索引 ]