代码之家  ›  专栏  ›  技术社区  ›  pmkruyen

使用apache的闪亮服务器ProxyPass

  •  0
  • pmkruyen  · 技术社区  · 6 年前

    而不是通过 https://www.example.com:3838/appname ,我想使用 https://www.example.com/appname

    需要注意的是,我不希望闪亮的服务器“接管”我的主页 https://www.example.com 服务于我自己的个人网站。

    Chris Beeley 包括在 /etc/apache2/sites-enabled/000-default-le-ssl.conf ,但这不起作用。但是,在某种程度上起作用的是,如果我调整代码如下

    ProxyPreserveHost On
    ProxyPass /shinyapps http://0.0.0.0:3838/shinyapps
    ProxyPassReverse /shinyapps http://0.0.0.0:3838/shinyapps
    ServerName localhost
    

    调整后的代码

    ProxyPreserveHost On
    ProxyPass /foo http://0.0.0.0:3838/foo
    ProxyPassReverse /foo http://0.0.0.0:3838/foo
    ServerName localhost
    

    是的,我的应用程序foo现在可以通过www.example.com/foo访问;但这意味着我需要在这个代码块中添加所有应用程序的名称。

    另外,如果这个问题是重复的,我很抱歉。

    http 已重定向到 https

    2 回复  |  直到 6 年前
        1
  •  1
  •   Chris Beeley    6 年前

    我认为你误解了网址的结构。你需要指出

    ProxyPass /foo http://0.0.0.0:3838/foo
    

    正如你所做的,但是foo是 目录

    所以把你所有的应用程序文件夹,放在foo里面。

    https://example.org/foo/app1
    https://example.org/foo/app2
    

    等。

        2
  •  2
  •   Elvis Plesky    6 年前

    这应该管用:

    ProxyPreserveHost On
    ProxyPass /(.*)$ http://0.0.0.0:3838/$1
    ProxyPassReverse /(.*)$ http://0.0.0.0:3838/$1
    ServerName localhost
    

    查看此链接: https://httpd.apache.org/docs/trunk/rewrite/intro.html