You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Apache FCGI中仅为指定URL设置flushpackets=on

Apache+php-fpm 仅特定URL启用flushpackets=on配置方案

你可以通过创建两个独立的Proxy定义,结合Location块来实现仅对特定URL开启flushpackets=on的需求,修改后的配置如下:

<IfModule !mod_php5.c>
  <IfModule !mod_php7.c>
    # Enable http authorization headers
    SetEnvIfNoCase ^Authorization$ "(.+)" HTTP_AUTHORIZATION=$1

    # 全局默认的PHP请求处理(不开启flushpackets)
    <FilesMatch \.(php|phar)$>
        SetHandler "proxy:unix:/run/php-fpm/www.sock|fcgi://localhost"
    </FilesMatch>
    <Proxy "fcgi://localhost" enablereuse=on max=10>
       ProxySet timeout=100
    </Proxy>

    # 针对特定URL的配置(开启flushpackets)
    <Location "/endpoint_1/">
        <FilesMatch \.(php|phar)$>
            SetHandler "proxy:unix:/run/php-fpm/www.sock|fcgi://localhost-flush"
        </FilesMatch>
    </Location>
    <Proxy "fcgi://localhost-flush" enablereuse=on flushpackets=on max=10>
       ProxySet timeout=100
    </Proxy>
  </IfModule>
</IfModule>

配置说明:

  • 定义了两个Proxy实例:fcgi://localhost(默认,无flushpackets)和fcgi://localhost-flush(开启flushpackets)
  • 全局FilesMatch确保所有PHP请求默认使用无flushpackets的Proxy
  • <Location "/endpoint_1/">块仅对匹配该URL路径的PHP请求,强制使用带flushpackets的Proxy
  • 如果需要匹配多个URL,可以用LocationMatch结合正则,比如<LocationMatch "^/(endpoint_1|endpoint_2)/">

内容的提问来源于stack exchange,提问作者user2531657

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 18:53:16