在闪亮的服务器不工作的情况下,在 NGINX 中将 HTTP 重定向到 HTTPS

Posted

技术标签:

【中文标题】在闪亮的服务器不工作的情况下,在 NGINX 中将 HTTP 重定向到 HTTPS【英文标题】:Redirect HTTP to HTTPS in NGINX with shiny server not working 【发布时间】:2021-01-10 16:06:25 【问题描述】:

这里我正在按照this 教程设置闪亮的服务器并通过 nginx 将 http 重定向到 https。

我使用以下配置设置了我的/etc/nginx/sites-available/example.com。我设法通过 https://example.com 访问了闪亮的应用程序 myapp。这意味着 nginx 正确地将 https://example.com 路由到 http://example.com:3838/myapp

问题是当我访问 http://example.com 时,nginx 并没有按照应有的方式将我重定向到 https://example.com

任何想法为什么会发生这种情况?

server 
   listen 80 default_server;
   listen [::]:80 default_server ipv6only=on;
   server_name example.com www.example.com;
   return 301 https://$server_name$request_uri;


server 
   listen 443 ssl;
   server_name example.com www.example.com;
   ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
   ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
   ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
   ssl_prefer_server_ciphers on;
   ssl_ciphers AES256+EECDH:AES256+EDH:!aNULL;

   location / 
       proxy_pass http://my_server_ip:3838/myapp;
       proxy_redirect http://my_server_ip:3838/myapp/ https://$host/;
       proxy_http_version 1.1;
       proxy_set_header Upgrade $http_upgrade;
       proxy_set_header Connection $connection_upgrade;
       proxy_read_timeout 20d;
   

【问题讨论】:

我认为错误就在这里。一方面,您应该输入应用程序的地址,例如127.0.0.1,另一方面,您想转发到文件夹 /myapp/。但这与 Nginx 不同。 link location /myapp/ .... 感谢您的评论。我通过从proxy_passproxy_redirect 中删除后缀/myapp 解决了这个问题。我仍然对 nginx 重定向到正确的应用程序感到非常惊讶,因为这个闪亮的服务器中有几个可用的应用程序,我没有在配置文件的任何地方定义我想要的。这有点像魔术,我不喜欢它...... 超级我把它作为答案再放一遍,这样下一个也能看到。 它不是魔法 Nginx 路由到端口 3838。您可以使用诸如“location /myapp ....”之类的位置部分进行设置。 【参考方案1】:

我认为错误就在这里。一方面,您应该输入应用程序的地址,例如127.0.0.1,另一方面,您想转发到文件夹 /myapp/。但这与 Nginx 不同。

从 proxy_pass 和 proxy_redirect 中删除:/myapp

Link

【讨论】:

以上是关于在闪亮的服务器不工作的情况下,在 NGINX 中将 HTTP 重定向到 HTTPS的主要内容,如果未能解决你的问题,请参考以下文章

ggplot 和dashboardPage 的闪亮不起作用

在没有闪亮服务器的情况下托管和设置自己的闪亮应用程序

带有 nginx 和 https 的闪亮服务器:应用程序的 404

默认情况下,闪亮的应用程序数据对于特殊输入小部件不可见

使用闪亮的服务器和 nginx 设置用于缓存的 http 标头

如何在不缩小r闪亮中的矩阵大小的情况下向输入矩阵添加列?