【问题标题】:Docker - Apache HTTP Proxy - Dynamic servernameDocker - Apache HTTP 代理 - 动态服务器名
【发布时间】:2017-11-08 21:37:31
【问题描述】:

我目前在容器中部署了一组服务,其中一个是 apache 服务器,用作客户端和应用程序服务器之间的代理。

我的问题是,如果 ServerName 指令与用户导航到的服务器的名称不完全匹配,则 apache 不会对请求执行任何操作。目前它是硬编码的。

例如:

用户 A 导航到:https://myapp.example.com/

我的 Apache 配置如下所示:

<VirtualHost *:443>
    Header set Access-Control-Allow-Origin "*"
    UseCanonicalName On
    ProxyPreserveHost   On
    ServerName myapp.example.com

    ProxyPass           /   http://application:3000/ keepalive=On retry=0
    ProxyPassReverse    /   http://application:3000/

</VirtualHost>

我希望“ServerName”指令是动态的而不是硬编码的。有没有办法解决?

【问题讨论】:

标签: apache docker proxy


【解决方案1】:

尝试添加服务器别名

ServerAlias *.com

afrer ServerName 指令。

【讨论】:

  • ServerName 指令是否应该遵循相同的格式?即 ServerName *.com ServerAlias *.com 同样,我不想硬编码。谢谢!
  • @Bryce 它应该在 ServerName 中没有 * 的情况下工作。不确定 ServerName 中是否允许使用通配符。您还可以使用这样一个事实,即如果未找到匹配项,它将默认为第一个 vhost 条目
  • 我很高兴它做到了:)
猜你喜欢
  • 2010-12-16
  • 2014-04-02
  • 2016-08-05
  • 1970-01-01
  • 2017-09-29
  • 2023-03-29
  • 2020-04-04
  • 2011-01-01
  • 2022-01-11
相关资源
最近更新 更多