第十三章 配置 Apache 以传递其他文件类型(所有平台)
在所有平台上,Apache API
模块始终识别对以下 InterSystems
文件类型的请求并将其发送到 Web
网关:
.csp .cls .zen .cxw
可能有对其他文件的请求,希望将其发送到 Web Gateway
,以便路由到相应的 IRIS
实例的 CSP
服务器。例如,如果需要通过此 Web
服务器访问管理门户,则还必须添加以下静态文件类型的映射:.jpg
、.gif
、.png
、.svg
、.css
和 .js
。
可以将 Apache
配置为通过以下任一方式将对附加文件的请求传递到 Web Gateway
:
- 按
CSP
位置指令 - 按文件扩展名
- 按
MIME
类型
注意:本页描述的 CSP
指令不能作为 <VirtualHost>
配置的一部分调用。
按位置配置 Apache
在 <Location>
块中使用 CSP
指令将对特定目录下的资源的所有请求传递到 Web
网关。以下命令会导致 Apache
将对 /csp
目录下的资源的所有请求转发到 Web Gateway
:
<Location /csp>
CSP On
</Location>
例如,对以下所有资源发出的请求将发送到 Web
网关,以路由到相应的 IRIS
实例:
/csp/
/csp/samples/menu.csp
/csp/sys/
按文件扩展名配置 Apache
(CSPFileTypes
指令)
CSPFileTypes
指令将 Web
服务器配置为将文件请求路由到 Web
网关(如果文件是特定类型的文件)。该指令仅适用于对具有扩展名的文件(例如 /csp/menu.csp
)的请求。它不适用于没有文件扩展名的资源(例如 /csp/menu
)。
以下指令使 Apache
将对 xxx
和 yyy
类型的文件的请求传递到 Web
网关。
CSPFileTypes xxx yyy
可以为整个服务器全局发出此指令,或将其限制为 <Location>
或 <Directory>
块。例如,以下命令会导致 Apache
将对 xxx
和 yyy
类型的文件的请求传递到 Web Gateway
,但仅当请求发送到 /csp
目录下的位置(包括 /csp/samples
等子目录)时:
<Location /csp/>
CSPFileTypes xxx yyy
</Location>
如下所示将通配符 (*
) 与 CSPFileTypes
指令一起使用会导致 Apache
将对 /csp
目录(和 /csp/samples
等)下所有类型的文件的请求传递到 Web Gateway
。
<Location /csp/>
CSPFileTypes *
</Location>
按 MIME
类型配置 Apache
除了识别上面列出的文件扩展名之外,CSP
引擎还可以识别以下 MIME
类型的文件:
application/x-csp
text/csp
例如,要将文件扩展名 xxx
添加到 IRIS
(特别是 CSP
引擎)处理的文件列表中,请使用:
LoadModule csp_module_sa /iris/csp/bin/CSPa24.dll
AddType application/x-csp csp cls zen xxx
使用 MIME
类型将文件类型与 CSP
关联的问题之一是 Apache
会检查以确保资源的路径(即托管目录)物理存在,如果不存在,则返回文件未找到错误。然而,它不会检查以确保所请求的文件物理存在——这适用于 CSP
引擎所服务的资源,就 Web
服务器而言,这些资源可以是虚拟的。因此,“按 MIME
类型”方法仅适用于可以在 Web
服务器上复制应用程序路径结构的情况。