簡體   English   中英

使用Apache的閃亮服務器ProxyPass

[英]Shiny server ProxyPass using apache

我的閃亮服務器在VPS上運行時沒有任何問題(在Ubuntu上,通過Apache)。 太好了。 :)但是,我現在嘗試實現的是以下內容(很抱歉,此處未使用正確的術語,這對我來說是新的):

而不是通過分享我的應用程序https://www.example.com:3838/appname ,我想用https://www.example.com/appname (這是所謂的端口轉發?又名“擺脫端口3838的')。

重要的是要注意,我不希望閃亮的服務器“接管”我的主頁,因為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

是的,現在可以通過www.example.com/foo訪問我名為foo的應用程序; 但這意味着我需要在此代碼塊中添加所有應用程序的名稱。

有什么建議么? 謝謝。

另外,如果這個問題重復出現,對不起。

PS。 http所有傳入連接都已重定向到https

那應該工作:

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

我認為您誤解了URL的結構方式。 您需要指出

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

完成后,但是foo是應用程序目錄的名稱。

因此,將您擁有的所有應用程序文件夾放入foo中。

現在,URL將是

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

等等。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM