ruby-on-rails – 如何在用户未登录时屏蔽我的目标网页?

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 如何在用户未登录时屏蔽我的目标网页?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我在https://example.com的轨道上建立了基于ruby的web平台

我的登陆和关于页面https://examplecms.com在其他主机的wordpress中托管.

我想要实现的是让用户访问https://example.com get masked https://examplecms.com,除非他们登录时我的平台的仪表板在根路径/中路由.

我想避免的是用户在URL https://examplecms.com中看到.

我到目前为止尝试了几个技巧:

>在我的家庭/索引操作控制器中,如果用户登录,我已重定向https://examplecms.com.但这会失败,因为它仍然在用户的浏览器中显示CMS网址.
>在指向CMS站点的主页/索引视图的渲染中使用Iframe.它的工作原理是因为它仍然可以正确显示我的网站网址,但这似乎有点可疑,但深层链接和导航似乎无法正常工作.

我一直在考虑在代理服务器级别,使用.htaccess或甚至使用DNS策略,但我无法找到这些策略的解决方案来检测用户何时登录

有任何想法吗?

谢谢

更新:
堆:

> Ubuntu
> Ruby on Rails
> Nginx乘客
> Amazon Ec2 Cloudflare DNS

您可以使用http://nginx.org/r/proxy_pass以静默方式将用户重定向到其他页面,而无需更改在浏览器的“位置”字段中向用户显示的URL.

要检查用户是否已登录,您可以通过http://nginx.org/r/error_page安装错误处理程序,仅在正常页面返回错误重定向用户(例如,如果正常的proxy_pass导致403 Forbidden响应,则将用户的请求重定向到根据错误处理程序替代proxy_pass上游).

猜你在找的Nginx相关文章