我应该如何在Raspberry Pi的Nginx反向代理上配置HTTPS rstudio服务器和闪亮服务器

时间:2019-10-09 14:15:54

标签: nginx https shiny-server rstudio-server shinyapps

我想做什么-

我在树莓派上运行Rstudio和Shiny服务器,可通过http://“ my.public.ip”:8787和:3838端口访问。我想将通过Nginx的服务器都绑定到我的域,例如“ https://code.example.blog/rstudio”,对于闪亮服务器... / shiny-admin也是如此。 域代码.example.blog是从Wordpress购买的,指向我的公共IP。

我的引用-

我是菜鸟,我浏览了Google上的可用信息,并使用了这两个网站作为参考 — https://ttdtrang.tk/2019/04/configure-nginx-as-a-reverse-proxy-for-rstudio-server/https://gist.github.com/magic-lanter/1b5e11c3cf5964b69e8e7824df015c5d

我所做的-

  1. 我创建了rstudio_shiny.conf块并将其放置在此位置“ etc / nginx / conf.d / rstudio_shiny.conf”

  2. 将这些行添加到“ /etc/nginx/nginx.conf”中。http {map $ http_upgrade $ connection_upgrade {默认升级; ” close;}

正在发生什么-

  1. 浏览“ https://code.example.blog”使我对Nginx表示欢迎 页面并且显示的地址没有变化
  2. 浏览“ https://code.example.blog/rstudio”将重定向到 http: //“ my.public.ip”:8787

此行为应更改为-

  

能否请您看一下下面的方框并提出解决方案,还可以建议我该配置是否允许我托管闪亮的应用程序?

我的网络-

具有开放端口80,443,22,8787,3838的静态IP

**

  

etc / nginx / conf.d / rstudio_shiny.conf   **

server {     

if ($host = code.example.blog) {     
  return 301 https://$host$request_uri;  
   } # managed by Certbot    
listen 80 ;   
listen [::]:80 ;     
server_name code.example.blog;   

}    



server {     
   access_log /var/log/nginx/code.example.blog;  
   root /var/www/html;   
   index index.html index.htm index.nginx-debian.html;   
   listen 443 ssl default_server;    
   listen [::]:443 ssl default_server;  

 ssl_certificate /etc/letsencrypt/live/code.example.blog/fullchain.pem; # managed by Certbot     
 ssl_certificate_key /etc/letsencrypt/live/code.example.blog/privkey.pem; # managed by Certbot   
 include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot   
 ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot     
 server_name code.example.blog;  

location /rstudio/ {     
 rewrite ^/rstudio/(.*)$ /$1 break;  
 proxy_pass http://MY.PUB.IP:8787;   
 proxy_redirect http://MY.PUB.IP:8787/ $scheme://$host/rstudio/;      
 proxy_http_version 1.1;     
 proxy_set_header Upgrade $http_upgrade;     
 proxy_set_header Connection $connection_upgrade;    
 proxy_read_timeout 20d;     
}    

location /shiny-admin/ {      
 rewrite ^/shiny-admin/(.*)$ /$1 break;  
 proxy_pass http://MY.PUB.IP:3838;   
 proxy_redirect http://MY.PUB.IP:8787/ $scheme://$http_host/shiny-admin/;    
 proxy_http_version 1.1;     
 proxy_set_header Upgrade $http_upgrade;     
 proxy_set_header Connection $connection_upgrade;    
 proxy_read_timeout 20d;     
 proxy_buffering off;    

}    
}

0 个答案:

没有答案