你好,我已为你们的论坛 API 构建了一个封装层,以便我们可以安全地让用户从我们的应用中发布论坛消息,而无需在应用中包含 API 密钥等信息。
请问是否有某个请求头可以传递给 API,以使请求看起来源自原始客户端?我尝试过使用 X-Forwarded-For,但似乎效果不佳。
谢谢。
你好,我已为你们的论坛 API 构建了一个封装层,以便我们可以安全地让用户从我们的应用中发布论坛消息,而无需在应用中包含 API 密钥等信息。
请问是否有某个请求头可以传递给 API,以使请求看起来源自原始客户端?我尝试过使用 X-Forwarded-For,但似乎效果不佳。
谢谢。
请参阅 Last IP address and action_dispatch.trusted_proxies - #3 by mpalmer
类似如下内容:
# 这是获取传输到 Discourse 的 IP 地址的关键配置
# 请参阅 https://meta.discourse.org/t/last-ip-address-and-action-dispatch-trusted-proxies/50098/3?u=pfaffman
- replace:
filename: /etc/nginx/conf.d/discourse.conf
from: "types {"
to: |
set_real_ip_from 192.168.1.0/24;
set_real_ip_from 172.19.0.0/24;
set_real_ip_from 172.18.0.0/24;
set_real_ip_from 172.17.0.0/24;
set_real_ip_from 38.242.7.193/28;
real_ip_recursive on;
real_ip_header X-Forwarded-For;
types {
谢谢Jay,我会看一下。
抱歉,如果我的问题不够聪明,但能否有人更详细地解释一下?
我在容器中找到了 /etc/nginx/conf.d/discourse.conf,但据我理解,该文件是动态生成的,因此在容器内所做的更改在重启后不会保留。我还找到了 ./config/discourse.conf,其中包含我的设置,因此我推测应该将上述设置添加到该文件中,但同样地,./config 目录也不会被持久化。
如果能得到一些温和的指引,我将不胜感激。
谢谢
有没有人能给我指个方向?
上面提供的示例展示了在构建新容器时如何修改 discourse.conf。