首页 文章

Apache&Rstudio Shiny App Redirect / Proxy

提问于
浏览
0

我已经在网上找到了很多关于此的建议,但没有任何与我的确切问题相符的内容 . 我有一个网络服务器设置,我让我们的网络人员给我一个DNS名称 . 我们称之为 analytics.mycompany.com . 这在端口80上运行,我没有问题 .

几个月前,我创建了一个RStudio Shiny应用程序,默认情况下,它运行在端口3838上 . 因此,我通过 http://analytics.mycompany.com:3838/dashboard/ 进行了此操作 . 这一切都很好,但领导层要求提供更简单的网址 . 我有我的DNS伙伴给我一个 analytics.mycompany.com 的别名为 dashboard.mycompany.com . 其中,默认只指向同一个端口80网站 .

现在,我想通过一个小的apache / virtualhost / rewriterules / proxy我可以告诉apache处理从_1604113收到的任何内容,只显示 http://analytics.mycompany.com:3838/dashboard/ 处的仪表板 . 玩完这个之后,我可以获得像 http://analytics.mycompany.com/dashboard/ 这样的URL转发到正确的:3838端口和URL,但我真正想要的是让某人能够输入 http://dashboard.mycompany.com 并且只显示闪亮的仪表板 . 我知道在DNS中你不能为端口创建别名,所以这就是out . 我希望apache能以某种方式处理这个问题,并说,"ok, I have this URL on port 80 and I'm going to just display the content of this other site at port 3838."

我不确定这是否可行,但这是我想要的 . 现在我在端口80的虚拟主机的httpd.conf文件是这样的:

<VirtualHost *:80>
   ServerAdmin admin@mycompany.com
   DocumentRoot /var/www/html
   RewriteEngine on
   RewriteCond %{REQUEST_METHOD} ^HEAD
   RewriteRule ^/dashboard(.*) /foo/index.html
   Redirect /dashboard http://analytics.mycompany.com:3838/dashboard
   ProxyPass /dashboard/ http://analytics.mycompany.com:3838/dashboard
   ProxyPassReverse /dashboard http://analytics.mycompany.com:3838/dashboard
</VirtualHost>

这是基于我发现的一个例子,并且尽可能接近我 . 我想我需要某种虚拟主机用于新的别名,如下所示:

<VirtualHost dashboard.mycompany.com:80>
   .....
</VirtualHost>

但是,我发现VirtualHost的所有示例都是*:80或某些IP地址,如192.168.0.1:80等 . 如果有人有建议或方法我可以通过简单的URL提供服务,我将非常感激 . 非常感谢!

1 回答

  • 0

    为了结束这个过程,这是一个两部分的过程:

    • 我不得不禁用SELinux,因为它正在干扰 .

    • 我创建了一个如上所述的VirtualHost条目(基本上是一个端口重定向)

    • 由于我们使用主DNS,因此我必须让我的网络人员为域添加InfoBlox条目 .

    在那之后,一切都按预期工作 . :)

相关问题