gpt4 book ai didi

ssl - 无法获取在 nginx 配置中传递的主机 header

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

我正在尝试建立一个负载平衡的、基于 SSL 的 RESTful 系统,利用 nginx 作为前端(后端使用 http)。我在获取完整的 URL 路径和一个参数到我的应用程序时遇到问题。

我在/etc/nginx/sites-available/default 中有这个:

upstream backend {
server 10.200.40.100;
server 10.200.40.101;
}

server {
listen 443;
server_name localhost;
ssl on;
ssl_certificate /etc/ssl/certs/reverse_chained_star_comtex_com.crt;
ssl_certificate_key /etc/ssl/certs/star_comtex_com.key;
ssl_session_timeout 5m;
ssl_protocols SSLv2 SSLv3 TLSv1;
ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
ssl_prefer_server_ciphers on;

underscores_in_headers on;
ignore_invalid_headers on;

location / {
proxy_redirect off;
proxy_set_header Host $host;
proxy_pass http://backend?$args;
}

但是当我发送请求并在后端查看 apache2 访问日志时,我看到:

10.200.40.102 - - [03/Jul/2013:11:51:50 -0400] "GET /? HTTP/1.0" 401 478 "-" "Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.116 Safari/537.36"

我应该看到这样的东西:

10.200.40.102 - - [02/Jul/2013:11:41:32 -0400] "GET /news/headlines/since/2013-07-02+01:00:00?api_key='xxxxxxx' HTTP/1.1" 401 4889 "-" "Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.116 Safari/537.36"

我的参数名称中确实有一个下划线,这就是我使用 underscores_in_headers 的原因。有什么想法可能出了问题吗?

最佳答案

你可以改变proxy_pass http://backend ?$参数;到proxy_pass http://backend ;

会解决这个问题

关于ssl - 无法获取在 nginx 配置中传递的主机 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17532136/

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