上下文
我正在尝试构建一个Web应用程序,其中Nginx充当前端服务器,也作为后端的NodeJS服务器的代理。我想通过适当的身份验证机制来限制对webapp功能部分的访问。身份验证逻辑由NodeJS服务器处理,并使用JWT来处理相同的事件。
当前流程:
问题陈述:
如何使用Node和Nginx实现相同的目标? Nginx如何知道NodeJS已经在步骤4中验证了用户令牌,然后服务于主页的静态部分?
这甚至可能吗?处理此类身份验证流程的最佳推荐方法是什么?
PS:我在服务器端使用ExpressJS框架,而在客户端使用普通的html / css / js(没有客户端Web框架)。
答案 0 :(得分:4)
我找到了涉及以下步骤的解决方案:
在使用X-Accel-Redirect时,需要特别注意Mime-Type的响应。
答案 1 :(得分:0)
我认为你有两个解决这个问题的方法。
你正在使用Auth0吗?他们建立了一个库来验证JWT令牌与Nginx& Lua中。所以请关注their tutorial,你应该做得很好。
我认为单页面应用程序的敏感部分存在于其数据和后端算法中。前面的HTML,CSS和JS文件(在大多数情况下)不需要保护!并且它可能无法保护它们。可以创建一个帐户,获取所有安全文件并在公共网站上公开。保持简单愚蠢。如果保护这些文件没用,请不要这样做!
我希望这会对你有所帮助:)。