Apache conf 此处不允许监听

Apache conf 此处不允许监听

我尝试 Apache 2.4 配置:

  Listen 443

  #if SECOND_HOST_PORT is defined and is not 443 listen on it 

  <IfDefine !SECOND_HOST_PORT>
    Define SECOND_HOST_PORT 443
  </IfDefine>

  <If "'${SECOND_HOST_PORT}' != '443'">
    Listen ${SECOND_HOST_PORT}
  </If>

但我明白:

这里不允许收听

在倒数第二行

我究竟做错了什么 ?

答案1

Listen您在不允许的地方使用。

根据文档Listen唯一允许的背景是server config

根据文档context这意味着它不允许出现在<VirtualHost>指令、<Directory>指令或 .htaccess 文件中。

此外,上下文的描述<Directory>表明<Location>,、、和指令<Files>的处理方式与 类似。<If><Proxy><Directory>

因此您不能在 里面使用它<If>


它在<IfDefine>指令内部起作用。

Define SECOND_HOST_PORT 4711

<IfDefine SECOND_HOST_PORT>
  Listen ${SECOND_HOST_PORT}
</IfDefine>

相关内容