Apache2 - 子域到端口 -> 转发

标签 apache ubuntu subdomain portforwarding dyndns

好的,由于阅读了数百本手册和说明页但仍然没有得到它,我正处于某个时刻,我觉得自己非常愚蠢。我希望你能帮帮我!

我有一台运行 Ubuntu Server 的服务器。在服务器上,我正在运行 ddclient 以使用 dyn.com 更新我的 IP。我有一个域“rasterkomplex.net”,它指向更新的 IP。简单的。

还有一个连接到服务器的摄像头,它运行自己的网络服务器@端口 3360。

当我现在进入时:rasterkomplex.net:3360 - 瞧。
但是现在有 2 个 minecraft 服务器同时在 5001 和 5002 上运行。对于每个 mc-server,都有 dynmap-plugins 也在不同的端口上运行一个 webserver。然后是一个网络存储……你明白了吗?我不想记住8个或更多端口,只是为了访问相关服务。

我想要完成的事情:

cam.rasterwerks.net -> internal to 127.0.0.1:3360
mc1.rasterwerks.net -> internal to 127.0.0.1:5001
mc2.rasterwerks.net -> internal to 127.0.0.2:5002
etc. etc. etc.

我读了很多关于 VHosts、ProxyPass 等的文章。但我无法管理它来工作。

你能给我一个方向如何做到这一点吗?如果它与虚拟主机有关,也许是一个样本?

非常感谢您的宝贵时间!

问候,

埃利亚斯。

最佳答案

您可以使用 apache一方面与 ProxyPassmod_proxy将您重定向到这里或那里,或者,您还可以安装 haproxy .然后,根据请求的 URL 中的主机,将请求传递到一个或另一个 Web 存储。
haproxy 的示例配置这样做将是:

frontend public
bind        X.X.X.X:80
mode        http
log         global
option      httplog
option      dontlognull
option      httpclose
maxconn     8000
clitimeout  90000

reqisetbe   ^Host:\ .*hudson    hudson

backend hudson
    mode            http
    balance         roundrobin
    contimeout      120000
    srvtimeout      120000
    redispatch
    retries         5
    server          internal.host.com Y.Y.Y.Y:8080 check inter 1000

所以在这个例子中,haproxy绑定(bind)到端口 80 并且请求的 URL 包含 *.hudson ,它被重定向到 internal.host.com IP 为 Y.Y.Y.Y到港口 8080 .

现在,对于 apache基于的解决方案。

您可以定义多个具有不同名称的 VHost,每个 VHost 都包含以下内容。

要进行基于名称的虚拟主机,您的 apache 配置应包含:
NameVirtualHost *

然后,虚拟主机本身应该是:
<Virtualhost *>
  DocumentRoot "/var/www/somewhere"
  ServerName localhost
  ServerAdmin support@mycompany.com
  DirectoryIndex index.html index.php
  ProxyRequests On
  ProxyPreserveHost On
  ProxyVia full

  <proxy>
    Order deny,allow
    Allow from all
  </proxy>

  ProxyPass        /  http://somehost:1234/
  ProxyPassReverse /  http://somehost:1234/
</Virtualhost>

随意选择对您来说更可行的任何解决方案。

关于Apache2 - 子域到端口 -> 转发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11890389/

相关文章:

php - 打包 PHP-MySQL 应用程序以便于安装

ruby-on-rails - 在本地主机(OS X 10.5)上设置通配符域?

php - 使用htaccess根据域名进行限制

php - CakePHP:您的服务器上的 URL 重写配置不正确

PHP [QUERY_STRING] 在回车处被截断

windows - SVN,无法使用 Tortoise 为驻留在 Ubuntu 12.04 机器上的工作副本提交更改

objective-c - ubuntu 12.04.3 : gcc 4. 8.2 in Objective-C

apache - 站点不存在 : Flask app on Apache 2. 4.29 Ubuntu 18.04

ruby-on-rails - 命名空间子域 Controller 和自定义布局

performance - Google Analytics 消除了我创建无 cookie 域的努力