Apache ProxyPass = IIS 8

1

TL; DR: Tarefas da Web demorando mais de 5 minutos por meio de erros do Apache ReverseProxy. Tarefas / relatórios de duração mais curta são bem-sucedidos. O acesso direto aos relatórios é bem-sucedido ( link em vez de link ). Onde devo estar procurando e que timeouts estou faltando?

Eu tenho uma Instância do Apache que está mudando para HTTPS, em seguida, ProxyPassando uma solicitação ao mesmo tempo ... em uma instância do Windows Server 2012 R2 IIS 8.

Browser <==> 
Apache 2.2.15 <==> 
IIS 8 (Windows 2012 R2, IIS 8.5.9600.16384) <==> 
Web App (<==> database)

Tudo está ficando insolente - até que um relatório de "longa duração" seja iniciado. Quando executado diretamente no servidor Windows, o relatório leva aproximadamente 6 minutos. Quando executado a partir do Navegador, relatórios mais curtos são bem-sucedidos, mas esse falha eventualmente.

Erro na página da Web:

502 Proxy Error

Proxy Error

The proxy server received an invalid response from an upstream server.
The proxy server could not handle the request GET /app/LongRunningReport.aspx.

Reason: Error reading from remote server

ssl_error:

==> ssl_error_log <==
[Wed Nov 04 14:59:48 2015] [error] [client 192.168.1.225] (104)Connection reset by peer: proxy: error reading status line from remote server 192.168.1.179
[Wed Nov 04 14:59:48 2015] [error] [client 192.168.1.225] proxy: Error reading from remote server returned by /app/LongRunningReport.aspx

ssl.conf:

LoadModule ssl_module modules/mod_ssl.so
Listen 192.168.1.101:443
SSLPassPhraseDialog  builtin
SSLSessionCache         shmcb:/var/cache/mod_ssl/scache(512000)
SSLSessionCacheTimeout  1200
SSLMutex default
SSLRandomSeed startup file:/dev/urandom  256
SSLRandomSeed connect builtin
SSLCryptoDevice builtin
<VirtualHost 192.168.1.101:443>
  ErrorLog logs/ssl_error_log
  TransferLog logs/ssl_access_log
  LogLevel warn
  SSLEngine on
  SSLProtocol all -SSLv2 -SSLv3
  SSLCipherSuite ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AESGCM:RSA+AES:RSA+3DES:!aNULL:!MD5:!DSS
  SSLCertificateFile conf.d/ssl.crt/test.crt
  SSLCertificateKeyFile conf.d/ssl.key/test.key
  SSLCertificateChainFile conf.d/ssl.crt/2015.crt
  SSLCACertificateFile conf.d/ssl.crt/Company_Root_CA.cer
  <Files ~ "\.(cgi|shtml|phtml|php3?)$">
    SSLOptions +StdEnvVars
  </Files>
  <Directory "/var/www/cgi-bin">
    SSLOptions +StdEnvVars
  </Directory>
  CustomLog logs/ssl_request_log "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"

  ServerName test.company.com
  RedirectMatch ^/$ https://test.company.com/app/login.aspx

  SSLProxyEngine on
  ProxyPass        / https://192.168.1.179/
  ProxyPassReverse / https://192.168.1.179/

  SetEnv force-proxy-request-1.0 1
  SetEnv proxy-nokeepalive 1
  SetEnv proxy-initial-not-pooled 1

  TimeOut 1200
  ProxyTimeout 1200
</VirtualHost>
SSLInsecureRenegotiation off
SSLHonorCipherOrder on

IIS Settings:
Advanced Settings > Limits > Connection Time-out (seconds): 1200
Session State > Cookie Settings > Timeout (in minutes): 20

Nós tentamos aumentar todas as configurações de Tempo Limite que podemos para 1200 (20 minutos) - dentro do Apache e do IIS.

O que estou perdendo? O que pode estar causando uma mensagem proxyerror entre o Apache e o IIS?

    
por WernerCD 10.11.2015 / 19:47

0 respostas