<-
Apache > HTTP 服务器 > 文档 > 版本 2.4 > 模块

Apache 模块 mod_proxy_scgi

可用语言:  en  |  fr 

描述用于 mod_proxy 的 SCGI 网关模块
状态扩展
模块标识符proxy_scgi_module
源文件mod_proxy_scgi.c
兼容性在版本 2.2.14 及更高版本中可用

摘要

此模块需要 mod_proxy 的服务。它提供对 SCGI 协议,版本 1 的支持。

因此,为了获得处理 SCGI 协议的能力,mod_proxymod_proxy_scgi 必须存在于服务器中。

警告

在您 保护您的服务器 之前,请勿启用代理。开放式代理服务器对您的网络和整个互联网都构成危险。

Support Apache!

主题

指令

错误修复清单

另请参阅

top

示例

请记住,为了使以下示例正常工作,您必须启用 mod_proxymod_proxy_scgi

简单网关

ProxyPass "/scgi-bin/" "scgi://localhost:4000/"

平衡网关需要 mod_proxy_balancer 以及至少一个负载均衡算法模块,例如 mod_lbmethod_byrequests,以及上面列出的代理模块。 mod_lbmethod_byrequests 是默认的,将用于此示例配置。

平衡网关

ProxyPass "/scgi-bin/" "balancer://somecluster/"
<Proxy "balancer://somecluster">
    BalancerMember "scgi://localhost:4000"
    BalancerMember "scgi://localhost:4001"
</Proxy>
top

环境变量

除了控制 mod_proxy 行为的配置指令之外,一个 环境变量 也可以控制 SCGI 协议提供程序

proxy-scgi-pathinfo
默认情况下,mod_proxy_scgi 既不会创建也不会导出 PATH_INFO 环境变量。这允许后端 SCGI 服务器正确确定 SCRIPT_NAMEScript-URI 并符合 RFC 3875 第 3.3 节。如果您需要 mod_proxy_scgiPATH_INFO 生成“最佳猜测”,请设置此环境变量。该变量必须在 SetEnv 生效之前设置。可以使用 SetEnvIf 代替:SetEnvIf Request_URI . proxy-scgi-pathinfo
top

ProxySCGIInternalRedirect 指令

描述启用或禁用来自后端的内部重定向响应
语法ProxySCGIInternalRedirect On|Off|Headername
默认值ProxySCGIInternalRedirect On
上下文服务器配置、虚拟主机、目录
状态扩展
模块mod_proxy_scgi
兼容性Headername 功能在版本 2.4.13 及更高版本中可用

ProxySCGIInternalRedirect 允许后端将网关内部重定向到不同的 URL。此功能源自 mod_cgi,如果响应状态为 OK (200) 并且响应包含 Location(或配置的备用标头)并且其值以斜杠 (/) 开头,则它会内部重定向响应。此值被解释为 Apache httpd 内部重定向到的新本地 URL。

mod_proxy_scgi 在这方面与 mod_cgi 相同,只是您可以关闭此功能或指定使用除 Location 之外的标头。

示例

    ProxySCGIInternalRedirect Off

# Django and some other frameworks will fully qualify "local URLs"
# set by the application, so an alternate header must be used.
<Location /django-app/>
    ProxySCGIInternalRedirect X-Location
</Location>
top

ProxySCGISendfile 指令

描述启用对 X-Sendfile 伪响应标头的评估
语法ProxySCGISendfile On|Off|Headername
默认值ProxySCGISendfile Off
上下文服务器配置、虚拟主机、目录
状态扩展
模块mod_proxy_scgi

ProxySCGISendfile 指令允许 SCGI 后端让文件直接由网关提供服务。这对于性能目的很有用——httpd 可以使用 sendfile 或其他优化,如果文件来自后端套接字,则这些优化是不可能的。此外,文件内容不会传输两次。

ProxySCGISendfile 参数决定网关行为

Off
不会进行特殊处理。
On
网关查找名为 X-Sendfile 的后端响应标头,并将该值解释为要服务的文件名。该标头将从最终响应标头中删除。这等效于 ProxySCGISendfile X-Sendfile
其他任何内容
On 类似,但不是使用硬编码的标头名称 X-Sendfile,而是使用该参数作为标头名称。

示例

# Use the default header (X-Sendfile)
ProxySCGISendfile On

# Use a different header
ProxySCGISendfile X-Send-Static

可用语言:  en  |  fr 

top

评论

注意
这不是问答部分。此处放置的评论应指向有关改进文档或服务器的建议,如果它们被实施或被认为无效/与主题无关,则可能会被我们的版主删除。有关如何管理 Apache HTTP Server 的问题应发送到我们的 IRC 频道 #httpd(在 Libera.chat 上)或发送到我们的 邮件列表