从另一个域(反向代理 NodeJS)登录到管理员时出现问题



我正在使用带有 Node 的反向代理(http-proxy-middleware(.js在 NodeBB 实例中加载。

网站网址 - www.website.com/forums/论坛网址 - forum.website.com/forums/

我无法通过网站网址登录论坛 (www.website.com/forums/login/(

我遇到登录表单超时后或会话不匹配错误。

我可以通过论坛 URL (forum.website.com/forums/login( 直接登录论坛,但由于 config.json 设置(允许 NodeBB 在另一个域上运行(,WebSocket 和无效会话存在问题。

NodeBB 从环境变量 key:value 运行,如下所示:

"url": "http://www.website.com/forums/",
"secret": "SECRET",
"database": "postgres",
"port": "4567",
"postgres__host": "HOST",
"postgres__port": 5432,
"postgres__username": "USER",
"postgres__password": "PASSWORD",
"postgres__database": "DB"

缺少哪些配置设置才能解决此问题?更重要的是,如何将它们设置为环境变量?

问题与 NodeBB 无关,而与 Node.js 代理(http-proxy-middleware(有关。

POST 请求未代理到服务器,因为"正文解析器"在我的代理服务器之前声明。

因此,解决方法是将我的代理定义和路由移动到"正文解析器"模块上方。

修复详见此处 - https://github.com/chimurai/http-proxy-middleware/issues/40#issuecomment-163398924

最新更新