gpt4 book ai didi

python - nginx proxy_set_header 不起作用

转载 作者:太空宇宙 更新时间:2023-11-03 14:26:42 26 4
gpt4 key购买 nike

背景

一个docker运行 supervisord 的容器已启动 2 个进程的进程 - nginxuwsgi (是的,我知道这可能是 docker 的“错误”。这不是问题)

uwsgi点击python flask应用程序。它连接了一个记录器,并将标题字典打印到信息日志中。

我有一个postman请求从我的本地盒子进行测试,点击 docker 容器,通过 nginx 路由并点击 python 应用程序,并附加信息日志。

正在记录 postman 发送的自定义 header (感谢ignore_invalid_headers off;)

问题

我想使用nginx用一些进一步的 header 来装饰传入的请求。无论我如何尝试,我都无法让它发挥作用。我没有在 nginx 中添加任何 header conf 似乎可以到达 flask应用程序。

我尝试过 proxy_set_header 或 uwgi_param。似乎没有任何变体有效。请注意 - 我想要一个请求 header 。我相信 add_header 用于响应 header 。

nginx.conf:

user nginx; 
worker_processes auto;
pid /run/nginx.pid;

events {
worker_connections 768;
}

http {
include /etc/nginx/mime.types;

access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;

include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;

underscores_in_headers off;
ignore_invalid_headers off;

upstream myapp {
server unix:/run/myapp.sock;
}

server {
listen 80;
location / {
include uwsgi_params;

uwsgi_pass myapp;

proxy_set_header x-proxy-set-header x-proxy-set-header-value;
proxy_set_header sampl-header ONE;
uwsgi_param X-add-uwsgi-param x-added-uwsfi-param-value;
}
}
}

daemon off;

任何帮助将不胜感激!!

最佳答案

所以。解决了。正如 Richard Smith 还发现的那样,proxy_pass 不起作用,因为我使用 uwsgi_pass 作为自定义协议(protocol)。

所以。这有效:

location / {
include uwsgi_params;

uwsgi_pass myapp;
uwsgi_pass_request_headers on;
uwsgi_param HTTP_X_TESTING 'bar';
}

我们用煤气做饭......空气冲床

关于python - nginx proxy_set_header 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47593452/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com