proxy: échec du corps de la demande

12

J'essaie d'activer le proxy virtualhost:

<VirtualHost *:80>

  ServerName xxxxx.domain.tdl
  SSLProxyEngine On
  SSLProxyCheckPeerCN on

  ProxyPass / https://localhost:1234
  ProxyPassReverse / https://localhost:1234

</VirtualHost>

Mais j'ai une erreur de 500 et mon erreur error.log (apache2) s'affiche:

[Tue Jan 03 15:41:42 2012] [erreur] (502) Erreur inconnue 502: proxy: le corps de la demande de passage a échoué à [:: 1]: 1234 (localhost)

[Tue Jan 03 15:41:42 2012] [erreur] proxy: le corps de la demande de passage a échoué à [:: 1]: 1234 (localhost) à partir de 82.252.xxx.xx ()

Il manque des paramètres?

bux
la source

Réponses:

3
ProxyPass / https://localhost:1234/
ProxyPassReverse / https://localhost:1234/

Essayez plutôt cela. La correspondance des barres obliques est importante.

Shane Madden
la source
1
Bonjour, même erreur avec les barres obliques.
bux
5
D'accord. Le service sur le port 1234 écoute-t-il réellement sur IPv6? Essayez 127.0.0.1au lieu de localhost. De plus, quel est le nom du sujet du certificat sur ce port? Si ce n'est pas une correspondance exacte avec ce nom d'hôte, la connexion échouera - et si vous effectuez la modification pour forcer l'hôte local IPv4 (127.0.0.1), cela échouera vraiment. Éteignez probablement juste SSLProxyCheckPeerCN.
Shane Madden
"Probablement juste désactiver SSLProxyCheckPeerCN": Oui, cela fonctionne maintenant =). Mais maintenant, le service derrière localhost: 1234 lance une erreur sur les cookies: / (Votre navigateur ne prend pas en charge les cookies, qui sont nécessaires pour que ce serveur Web fonctionne en mode d'authentification de session) Je pense que son service ProxyPass, fonctionne très bien sans lui.
bux
n'a pas aidé pour moi, d'autres idées?
childno͡.de
@ childno.de Il serait préférable que vous ouvriez une nouvelle question avec votre configuration spécifique et vos entrées de journal afin que nous puissions y jeter un œil.
Shane Madden
3

Si le navigateur définit les cookies pour xxxxx.domain.tdl et que le serveur les renvoie pour l'hôte local ou un domaine défini localement, vous pouvez avoir une incompatibilité. Vous pouvez utiliser ProxyPassReverseCookieDomainpour réécrire les cookies.

Comme ils sont tous les deux sur /, vous n'en aurez probablement pas besoin ProxyPassReverseCookiePath.

Bill McGonigle
la source
2

Utilisez 127.0.0.1au lieu de localhost, probablement que votre application n'exécute pas IPv6

GioMac
la source