Maison  >  Questions et réponses  >  le corps du texte

Vous recherchez une solution pour la requête HTTPS du proxy de transfert Nginx

Le serveur d'applications (Tomcat) et le serveur proxy (Nginx) se trouvent sur des serveurs différents, et le serveur d'applications ne peut pas accéder directement au réseau externe. Les requêtes HTTP pour accéder au réseau externe ne peuvent être envoyées que via Nginx正向代理.

Par exemple en utilisant

apache.http.client

/** 正向代理地址 */
private static HttpHost forwardProxy = new HttpHost(host, forwardPort, forwardSchema);
HttpClientBuilder builder = HttpClients.custom().setDefaultRequestConfig(globalConfig).setKeepAliveStrategy(keepAliveStrat);
if (isForward) {
    builder.setProxy(forwardProxy);
}
this.httpClient = builder.build();
    server {
        listen 8092;
        location / {
            # 配置 DNS 解析 IP 地址,以及超时时间,
            resolver 219.149.6.99 114.114.114.114;
            resolver_timeout 30s;
            proxy_pass $scheme://$host$request_uri;
            # proxy_set_header 部分的配置,是为了解决如果 URL 中带 "."(点)后 Nginx 503 错误
            proxy_set_header Host $http_host;
            # 配置缓存大小,关闭磁盘缓存读写减少I/O,以及代理连接超时时间
            proxy_buffers 4 256k;
            proxy_max_temp_file_size 0;
            proxy_connect_timeout 30;
            # 配置代理服务器 Http 状态缓存时间
            proxy_cache_valid 200 302 10m;
            proxy_cache_valid 301 1h;
            proxy_cache_valid any 1m;
        }
        access_log logs/proxy-$host-aceess.log main;
        error_log  logs/proxy-$host-error.log;
    }

La méthode ci-dessus est correcte

. HTTPS请求貌似不起作用,不用回复Nginx就是不支持正向代理HTTPS,我只想评估这种场景的解决方案

我想大声告诉你我想大声告诉你2734 Il y a quelques jours721

répondre à tous(2)je répondrai

  • 天蓬老师

    天蓬老师2017-05-16 17:10:50

    Votre proxy ici est $scheme://$host$request_uri ; Pourquoi avez-vous besoin d'utiliser une variable du serveur sur lequel nginx se trouve ? Cela semble très étrange ici ?

    répondre
    0
  • 某草草

    某草草2017-05-16 17:10:50

    Personne n'a d'idées ?

    répondre
    0
  • Annulerrépondre