问题
在创build帐户时,我希望用户以username.domain-name.com的身份访问他们的个人资料
我也有网站function:
username.domain-name.com/feature1 username.domain-name.com/feature2 username.domain-name.com/feature3
如果上面的用户允许他访问,上面的链接可能有其他用户可以访问的内容。
例如: user1.domain-name.com/feature1
,这里user1已经授权访问user2因此,user2已经login并访问user1.domain-name.com/feature1
他应该能够看到内容。
我的研究到目前为止:
我尝试了以下链接:
https://kadira.io/blog/meteor/sharing-meteor-login-state-between-sub-domains
https://github.com/jfrolich/meteor-subdomain-persistent-login
读了很多之后,我发现meteor有localStorage作为存储用户login信息的方式。 所以,我必须设法将细节传递给子域。 我也尝试在nginxconfiguration中使用proxy_pass来执行以下操作:请求: username.domain-name.com/feature1
应该被代理(不重新指定URL将是相同的) domain-name.com/username/feature1
如果有人在这里介绍一下我应该使用的方法真的会对我有所帮助。
我知道这个devise可能不适合search引擎。
更新
我现在成功地使用了以下devise:如果user1在domain-name.com上login并且想要访问他自己的configuration文件页面,如user1.domain-name.com/profile。
第一步:user1访问user1.domain-name.com/profile它redirect到domain-name.com,其中user1在localstorage中有会话,然后阅读HTTP标头referrer我得到user1.domain-name.com/profile并准备新的url:user1。 domain-name.com/profile?token=userToken(我可能会创build另一个临时标记在数据库中,只需点击一下exp。)
第2步:redirect到新的urluser1.domain-name.com/profile?token=userToken,使用get参数我在localstorage中创build新的会话,并将user1redirect到user1.domain-name.com/profile。
这是非常规的解决scheme,我仍然在重新寻找。