第六十八章 使用 NSD (UNIX® Linux macOS) - 在备用 TCP 端口上启动 NSD
默认情况下,NSD 侦听 TCP 端口 7038 上的传入请求。可以通过按如下方式启动服务来覆盖此设置,其中 port_no 是选择的 TCP 端口号。
./CSPnsd [port_no]
或
./CSPnsd -p=[port_no]
启动时,NSD 创建以下文件:
/opt/webgateway/bin/CSPnsd.ini
通常,该文件包含以下行:
[SYSTEM]
Ip_Address=127.0.0.1
TCP_Port=7038
在此上下文中,客户端是包含在 Web 服务器内或动态链接到 Web 服务器的 Web 网关模块和/或由服务器调用的 Web 网关 CGI 模块。因此,重要的是不要删除或移动该文件。 Web 服务器进程可以读取此文件也很重要。请记住 Web 服务器运行时使用的 UNIX® 用户名,相应地设置权限。 NSD 客户端尝试在以下位置查找此文件:
/opt/webgateway/bin
/etc
如果 NSD 在不同的目录中运行,则必须将 CSPnsd.ini 文件移动到列出的位置之一。
在运行多个 NSD 实例的情况下,将 NSD 端口号存储在 CSPnsd.ini 文件中是不合适的。对于 Apache 服务器,有一种更好的机制可以将 NSD 的 TCP 端口号传递给其客户端。具体来说,在 Apache 配置中设置以下环境变量以指示目标 NSD 安装的地址和端口。
CSP_NSD_NAME— 这是NSD的IP地址。仅当NSD在远程计算机上运行时才使用此参数。CSP_NSD_PORT— 这是NSD的TCP端口。
这些环境变量中指定的值优先于 CSPnsd.ini 文件中找到的任何值。
示例 1:两个 Apache 虚拟主机
要在两个独立的 NSD 安装(侦听 TCP 端口 7038 和 7039)之间分配两个 Apache 虚拟主机(123.123.1.1 和 123.123.1.2)的负载,请将以下指令添加到 Apache 配置 (httpd.conf):
<VirtualHost 123.123.1.1>
ServerName 123.123.1.1
SetEnv CSP_NSD_PORT 7038
</VirtualHost>
<VirtualHost 123.123.1.2>
ServerName 123.123.1.2
SetEnv CSP_NSD_PORT 7039
</VirtualHost>