如何将 Linux 远程服务器的 IP 1.2.3.4:8080 链接到 projects.example.com/app?

如何将 Linux 远程服务器的 IP 1.2.3.4:8080 链接到 projects.example.com/app?

我有远程 Debian Linux 服务器,我可以使用 Putty 控制台通过 IP 或域访问它。这意味着服务器 IP 已经指向主机名,例如:

1.2.3.4 -> projects.example.com

我在基于 Apache 的远程服务器上安装了名为 JIRA 的应用程序。我可以使用 1.2.3.4:8080 访问其网站,我想将其链接到 projects.example.com/jira

我该怎么做?任何带有教程链接的详细信息当然都会有帮助。

答案1

JIRA 开箱即用,作为独立的 tomcat 容器运行。您可以轻松地从 apache 代理它,我只是将其配置为单独的子域,而不是站点的子目录(即 jira.mysite.com 与 projects.example.com/jira)。

这是我使用 mod_proxy 设置 apache => Jira 配置的教程: http://confluence.atlassian.com/display/JIRA044/Integrating+JIRA+with+Apache

要在 /jira 之类的子目录上运行它,可能只需在 vhost 中执行以下操作即可:

ProxyPass /jira http://localhost:1080/
ProxyPassReverse /jira http://localhost:1080/

并在conf/server.xml中设置上下文路径:

<Context path="/jira" docBase="${catalina.home}/atlassian-jira" reloadable="false">

答案2

如果您只想执行这个简单的代理而不运行完整的 Web 服务器,您也可以使用 NGINX 来执行此操作。

server {
    listen 80 default;
    servername projects.example.com _;

    location /jira {
        rewrite ^/jira(.*)$ $1 break;
        proxy_pass http://1.2.3.4:8080;
        proxy_pass_request_headers      on;
        proxy_set_header                Host            $http_host;
        proxy_set_header                X-Forwarded-For $remote_addr;
    }
}

相关内容