So erhalten Sie https unter CentOS 7 mit installierter App im Docker

635
Rob D. A.

So konfigurieren Sie httpd unter CentOS 7 als Proxy für (Docker Container) -App, die auf Port 8080 ausgeführt wird. Ich habe überlegt, wie es funktionieren soll, meine Anwendung wurde als Container für einen Docker vorbereitet (hatte noch nie davon gehört;)). Also musste ich erst lernen, was "Docker" ist und wie es funktioniert (weil die App läuft.) in Container würde ich nicht https verwenden lassen). Also, was ich getan habe, um es zu erreichen: - VPS mit httpd / apache vorbereitet und dann ein VS - Installiertes SSL-Zertifikat auf httpd erstellt. - Installierter Docker - App-Image abgerufen ... um HTTPS zum Laufen zu bringen, musste ich meinen VirtualServer wie unten beschrieben neu konfigurieren

meine VS-Konfig (aktualisierter Proxy)

# HTTP <VirtualHost *:80> ServerName myserver.domain.co.uk RewriteEngine On RewriteCond % off RewriteRule (.*) ht tps://%/$1 [R,L] LogLevel warn ErrorLog myserver.domain.co.uk-error_log CustomLog myserver.domain.co.uk-access_log combined </VirtualHost> # HTTPS <VirtualHost *:443> ServerName myserver.domain.co.uk LogLevel warn ErrorLog myserver.domain.co.uk-error_log CustomLog myserver.domain.co.uk-access_log combined SSLEngine on SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH SSLProtocol All -SSLv2 -SSLv3 SSLHonorCipherOrder On SSLCertificateFile /etc/pki/tls/certs/ca.crt SSLCertificateKeyFile /etc/pki/tls/private/ca.key Header set X-Content-Type-Options "nosniff" # Reverse proxy configuration <Proxy *> Allow from localhost </Proxy>  ProxyPass / http://127.0.0.1:8080 ProxyPassReverse / http://127.0.0.1:8080  </VirtualHost> 

... und jetzt geht es!

0
Hallo, ja, ich habe bereits recherchiert und einige Details gefunden. Mein httpd hat bereits alle Module installiert und ich habe auch einige config erstellt. Überprüfen Sie oben. Rob D. A. vor 6 Jahren 0
Alle Module laufen natürlich. Zumindest httpd -L sagte das :) Rob D. A. vor 6 Jahren 0
Ich bin mir ziemlich sicher, dass die Anweisungen proxypass und proxypassreverse nicht in einem Standortblock sein sollten und Ihre Syntax tweeking benötigt. Löschen Sie die location- und / location-Tags und wechseln Sie zu ProxyPass / https: ... / mit dem entsprechenden proxypassreverse. (dh die Syntax erfordert sowohl Pfad als auch URL als Parameter) davidgo vor 6 Jahren 0
Ich verstehe nicht ganz ... geben Sie bitte ein Beispiel an? Rob D. A. vor 6 Jahren 0
Nachdem ich <location /> entfernt hatte, konnte ich den httpd-Dienst nicht neu starten Rob D. A. vor 6 Jahren 0
Haben Sie auch die / in die Zeilen ProxyPass und proxypassreverse eingefügt? Welchen Fehler haben auch die Protokolle angezeigt? (Ich befinde mich nicht an meinem Computer, daher ist es für mich nicht praktikabel, auf Ihre letzte Anfrage zu antworten.) davidgo vor 6 Jahren 0
Nein, ich habe nicht hinzugefügt /, wenn ich es nicht mache, werde ich httpd erneut starten :), aber ich habe etwas anderes in error_log gefunden: [Fri Dec 01 16: 55: 22.627604 2017] [ssl: warn] [pid 46095] AH02292 : Init: Namensbasierte virtuelle SSL-Hosts funktionieren nur für Clients mit Unterstützung für die Anzeige des TLS-Servernamens (RFC 4366) Rob D. A. vor 6 Jahren 0
Wahrscheinlich ja. Was musst du verlieren, wenn du es versuchst? Die SSL-Warnungstage, die dieses Setup durchbricht, werden sehr alte Browser (Windows XP-Ära) zerstören, sollten jedoch kein Problem mit moderneren oder sichereren Elementen im Web darstellen. davidgo vor 6 Jahren 0
Was ist also mit diesem Fehler? Was kann ich tun, damit es funktioniert? Rob D. A. vor 6 Jahren 0
Oder vielleicht sollte ich SSL zuerst auf dem Container installieren und dann einfach den Port 443 oder etwas anderes ausführen? Rob D. A. vor 6 Jahren 0
Problemlöser, VS-Konfiguration geändert, Proxy-Server und funktioniert. Rob D. A. vor 6 Jahren 0

0 Antworten auf die Frage