第六十四章 Apache 的替代选项 (Windows)

第六十四章 Apache 的替代选项 (Windows)

此页面包含有关在 Microsoft Windows 上安装 Apache Web 服务器的信息,以便与 InterSystems Web Gateway 一起使用。阅读适用于安装的部分。

本页介绍了 Microsoft Windows 的其他 Apache 配置。要开始使用所有这些配置,请阅读第一部分。然后按照适用于安装的部分中的说明进行操作。

安装位置(所有非典型选项)

安装了以下模块:

  • CSPcgi.exe (Runtime module)

  • nph-CSPcgi.exe (Copy of CSPcgi.exe)

  • CSPcgiSys.exe (Systems-Management module)

  • nph-CSPcgiSys.exe (Copy of CSPcgiSys.exe)

注意:Apache 2.4.x 版有单独的二进制文件,如下所示:

  • mod_csp24.dll(作为 DLLApache 内置模块,如果提供)
  • CSPa24.dll(运行时模块,如果提供)
  • CSPa24Sys.dllWeb 网关系统管理模块,如果提供)

这些二进制文件的默认位置是:

C:\Program Files\Apache Group\Apache\WebGateway\bin

原始位置 (install-dir\csp\bin) 用于保存为特定IRIS 实例的管理门户提供服务所需的 Web Gateway 组件。

对于非基于 NSD 的连接选项,配置和日志文件写入此目录。

附加 Sys 的模块是用于访问 Web Gateway 系统管理套件的特殊模块。运行时模块(即那些没有 Sys 的模块)无法访问系统管理表单。

替代选项 1:带有 NSDApacheCGI 模块 (nph-CSPcgi.exe)

配置 Web 服务器,使其识别文件类型并将它们传递到 Web 网关进行处理。

Web 服务器配置文件 (httpd.conf) 位于以下目录中:

C:\Program Files\Apache Group\Apache\conf

将以下部分添加到 httpd.conf 的末尾:

<LocationMatch "/*\.([Cc][Ss][Pp]|[Cc][Ll][Ss]|[Zz][En][Nn])$">
    AllowOverride None
    Options FollowSymLinks ExecCGI
    Require all granted
</LocationMatch>
ScriptAliasMatch /*\.([Cc][Ss][Pp]|[Cc][Ll][Ss])$ "c:/iris/csp/bin/nph-CSPcgi.exe"
Alias /csp/ c:/iris/csp/
<Directory "c:/iris/csp">
    AllowOverride None
    Options MultiViews FollowSymLinks ExecCGI
    Require all granted
    <FilesMatch "\.(log|ini|pid|exe)$">
        Require all denied
    </FilesMatch>
</Directory>
ScriptAlias /csp-bin/ "c:/iris/csp/bin/"
ScriptAliasMatch /csp/bin/Systems/Module.cxw "c:/iris/csp/bin/nph-CSPcgiSys.exe"
ScriptAliasMatch /csp/bin/RunTime/Module.cxw "c:/iris/csp/bin/nph-CSPcgi.exe"
<Directory "c:/iris/csp/bin/">
    AllowOverride None
    Options None
    Require all granted
    <FilesMatch "\.(exe)$">
        Allow from all
    </FilesMatch>
</Directory>

上述配置块依赖于 Apache 环境可用的正则表达式 (regex) 处理器。有时情况并非如此,特别是在 Windows 系统中,因此不会提供 CSP 文件(返回文件未找到错误)。要解决这种情况,请将 Web 应用程序的(虚拟)根位置与 CGI 模块关联,而不是通过 CSP 文件扩展名进行关联。例如,Web 应用程序位于 /csp 中。要将 CSP CGI 模块与 /csp 下的文件关联,请替换以下配置块:

<LocationMatch "/*\.([Cc][Ss][Pp]|[Cc][Ll][Ss]|[Zz][En][Nn])$">
    AllowOverride None
    Options FollowSymLinks ExecCGI
    Require all granted
</LocationMatch>
ScriptAliasMatch /*\.([Cc][Ss][Pp]|[Cc][Ll][Ss])$ 
      "c:/iris/csp/bin/nph-CSPcgi.exe"

<Location "/csp">
    AllowOverride None
    Options FollowSymLinks ExecCGI
    Require all granted
</Location>
ScriptAlias /csp "c:/iris/csp/bin/nph-CSPcgi.exe"

这些指令适用于以下形式的 URL

http://localhost:<port_no>/csp/*.csp

为其他根位置复制此配置块。例如,针对以下形式的 URL/myapps 重复该过程:

http://localhost:<port_no>/myapps/*.csp

避免正则表达式问题的另一种方法是将 Action 指令与 CSP MIME 类型结合使用。但请注意,Action 是一种内容过滤技术,因此要求CSP 文件实际存在于 Web 服务器主机上,即使 IRIS 服务器安装在单独的计算机上也是如此。

要使用此方法:

  1. 将新的 MIME 类型添加到 Apache mime.types 文件的末尾,并将其与表示类的文件类型关联:.csp.cls.zenmime.types 文件与 httpd.conf 文件位于同一目录中:
text/csp                csp cls
  1. Action 指令添加到 httpd.confCGI 配置块的末尾,如下所示:
Alias /csp/ c:/iris/csp/
<Directory "c:/iris/csp">
    AllowOverride None
    Options MultiViews FollowSymLinks ExecCGI
    Require all granted
<Files CSPnsd.exe>
       Require all denied
    </Files>
<Files CSP.ini>
       Require all denied
    </Files>
<Files CSP.log>
       Require all denied
    </Files>
<Files CSPnsd.ini>
       Require all denied
    </Files>
<Files CSPnsd.pid>
       Require all denied
    </Files>
    <FilesMatch "\.(log|ini|pid|exe)$">
       Require all denied
    </FilesMatch>
</Directory>
ScriptAlias /csp-bin/ "c:/iris/csp/bin/"
<Directory "c:/iris/csp/bin/">
    AllowOverride None
    Options None
    Require all granted
</Directory>
Action text/csp “/csp-bin/nph-CSPcgi.exe”

最后,请注意,由于 CGI 是开放标准,因此 CSP CGI 模块适用于任何 Web 服务器。

  1. 更改 httpd.conf 后重新启动 Apache

映射其他文件类型

Apache API 模块始终识别 InterSystems 文件类型。对于其他文件扩展名,请参阅配置 Apache 以传递其他文件类型。

使用 Apache NSD 操作和管理Web 网关

此连接选项取决于 Web Gateway 的网络服务守护程序 (NSD)。

  1. 按照操作 NSD 中的说明启动 CSP NSD
  2. 更改其配置 (httpd.conf) 后重新启动 Apache

ApacheNSD 的启动顺序并不重要。

  1. 要访问 Web Gateway 管理页面,请将浏览器指向以下位置之一:
http://localhost:<port_no>/csp/bin/Systems/Module.cxw
http://localhost:<port_no>/csp-bin/nph-CSPcgiSys
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,324评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,303评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,192评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,555评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,569评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,566评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,927评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,583评论 0 257
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,827评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,590评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,669评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,365评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,941评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,928评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,159评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,880评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,399评论 2 342

推荐阅读更多精彩内容