Apache & Rstudio Shiny 应用重定向/代理

Posted

技术标签:

【中文标题】Apache & Rstudio Shiny 应用重定向/代理【英文标题】:Apache & Rstudio Shiny App Redirect/Proxy 【发布时间】:2017-07-21 06:18:59 【问题描述】:

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

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

现在,我想用一点 apache/virtualhost/rewriterules/proxy 我可以告诉 apache 处理它从 dashboard.mycompany.com 接收到的任何内容,以便在 http://analytics.mycompany.com:3838/dashboard/ 处显示仪表板。玩过这个之后,我可以得到一个像http://analytics.mycompany.com/dashboard/ 这样的 URL 来转发到正确的 :3838 端口和 URL,但我真正想要的是有人能够只输入 http://dashboard.mycompany.com 并让闪亮的仪表板出现。我知道在 DNS 中你不能为端口设置别名,所以它已经过时了。我希望 apache 能以某种方式处理这个问题,通过说,“好的,我在端口 80 上有这个 URL,我将在端口 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 上提供服务,我将不胜感激。非常感谢!

【问题讨论】:

我找到了部分答案。根据另一篇文章,我必须在 RHEL 上修改 SELinux,如下: /usr/sbin/setsebool -P httpd_can_network_connect 1 完成后,我现在可以输入analytics.mycompany.com/dashboard,它显示时没有:3838。现在我只需要以某种方式使“dashboard.mycompany.com”在“analytics.mycompany.com/dashboard”处显示内容。对此的任何进一步帮助都会很棒。谢谢! 【参考方案1】:

为了结束这件事,这是一个由两部分组成的过程:

    我不得不禁用 SELinux,因为它有干扰。 我按照上面的说明创建了一个 VirtualHost 条目(基本上是一个端口重定向) 由于我们使用主 DNS,我必须让我的网络人员为域添加一个到 InfoBlox 的条目。

之后,一切都按预期进行。 :)

【讨论】:

以上是关于Apache & Rstudio Shiny 应用重定向/代理的主要内容,如果未能解决你的问题,请参考以下文章

R&&rstudio

python趋势稳定检验Kwiatkowski-Phillips-Schmidt-Shin

带有 rstudio 的新版本 R

在 RStudio 中重新激活 Push & Pull 按钮

R&Rstudio安装各种包

最详细的Centos7下Rstudio-service配置教程