【问题标题】:Set virtual host for redirect to multiple web server (apache)设置虚拟主机以重定向到多个 Web 服务器 (apache)
【发布时间】:2019-05-10 00:21:58
【问题描述】:

不知道什么是完美的标题,但就是这样。

我正在使用 Windows Server 2008 R2 运行服务器。

在这台服务器上我有三个 webapps,它已经运行良好

  1. App1 在端口 80 上使用 Apache2
  2. App2 在端口 81 上使用 IIS
  3. App3 在端口 83 上使用 Xampp Apache

我已经为每个端口设置了一个域 1. domain1.com 用于端口 80 2. domain2.com 用于端口 81 3. domain3.com 用于 83 端口

所有域都指向服务器,当我在域后面使用 (:port) 时它工作正常,例如。 domain1:83 已经在端口 83 上打开 Xampp Apache。

然而,我需要的是当我输入 domain1.com 时它应该打开端口 80,domain2.com 它应该打开端口 81,而 domain3.com 应该打开端口 83。

简单地说,如果我想打开这些网站,我不需要添加 :81 或 :83。

使用的主要 apache 服务器是 Apache2,当我输入 domain2.com 时,我需要配置自动转到端口 81 (localhost:81),所以如果我输入 domain3.com,它会转到端口 83 (localhost:83) )

意思是,Apache2 只处理端口 80 上的 App1,当我想使用 domain2.com 访问 App2 时,它引用 localhost:81 然后进程将由 IIS 处理,因此对于使用 domain3.com 的 App3 它引用 localhost:83 然后 Xampp 将处理该过程。

每个应用程序都有不同的配置,所以我不能把它放到单个端口 80,然后通过 DocumentRoot 区分它,因为 Apache2 不处理其他应用程序。

问候,

【问题讨论】:

    标签: apache


    【解决方案1】:

    在 Apache 上设置 name-based virtual host support。它正在处理 80 端口,因此无论使用什么端口号,它都会处理对端口 80 的所有请求。

    你有两个选择。

    • 重定向
    • 代理

    您可以将流量重定向到另一个端口(这将在浏览器的地址栏中显示端口号,并导致搜索引擎将包含该端口号的 URL 编入索引)

    Redirect / http://domain2.com:81/
    

    或者您可以proxy the traffic through Apache(它将通过 Apache 中继所有内容,这可能会影响性能):

    ProxyPass "/"  "http://domain2.com:81/"
    

    【讨论】:

    • 抱歉回复晚了,不知道有人提交了答案。所以,
    • 所以,我已经尝试了上述方法,但没有任何效果,这就是我提交这个问题的原因。至于使用上述方法,Redirect / domain2.com:81 导致输入 domain1.com/ 也指端口:81,我需要的是如果 type domain1.com 它转到端口 81,如果 type domain2.com 它转到端口 83使用重定向,我们应该使用 / 表示如果我想访问端口 81,那么我必须设置 domain1.com/domain1
    • @estobayus — 如果输入 domain1.com 会重定向到 domain2.com:81,那么您错过了答案的第一段。
    猜你喜欢
    • 1970-01-01
    • 2017-04-08
    • 2016-02-02
    • 2019-02-08
    • 2015-08-27
    • 2016-11-06
    • 2019-01-27
    • 2013-03-03
    • 2020-02-02
    相关资源
    最近更新 更多