Voraussetzung
Der Umgebungsaufbau wurde mit Sakura VPS abgeschlossen, und ich habe die ursprüngliche Domäne des von mir erstellten Webdienstes erworben. Unter der Bedingung, dass das Dokumentstammverzeichnis festgelegt ist und die http-Verbindung mit dem Domänennamen (○○ .com usw.) abgeschlossen ist. Ich werde es beschreiben.
Arbeitsumgebung
CentOS7 Apache2.4.6
Ausstellen eines kostenlosen SSL-Zertifikats mit Let's encrypt, um es zu SSL zu machen
Diesmal habe ich Let's encrypt verwendet, weil ich ein kostenloses SSL-Zertifikat ausstellen wollte.
Teil verstopft
https://weblabo.oscasierra.net/letsencrypt-2/
Auch wenn der Inhalt des Referenzartikels hier perfekt ist, wechselt die http-Verbindung nicht zur https-Verbindung.
Gegenmaßnahmen
Es ist im Referenzartikel geschrieben Berücksichtigen Sie die Möglichkeit, dass die Einstellungen für Apache 2.4 nicht gut wiedergegeben werden.
$ apachectl config test ← Überprüfen Sie mit diesem Befehl die Syntax von ssl.conf.
Dann erscheint die folgende Fehlermeldung.
Syntax error on line XX of /path/to/ssl.conf: SSLCertificateFile: file '/path/to/cert.pem' does not exist or is empty
Wenn Sie mit der obigen Fehlermeldung suchen
https://www.proto-star.com/2016/04/24/lets-encrypt-apache-%E3%81%A7%E3%81%A1%E3%82%83%E3%82%93%E3%81%A8%E8%A8%BC%E6%98%8E%E6%9B%B8%E3%81%AE%E7%94%9F%E6%88%90%E3%81%8C%E5%AE%8C%E4%BA%86%E3%81%97%E3%81%A6%E3%82%8B%E3%81%AE%E3%81%AB/
Ich konnte auf diesen Artikel stoßen. Wenn ich die Berechtigungseinstellungen ändere
$ apachectl configtest Syntax OK
Nachdem ich bestätigt hatte, dass die Einstellungen für Apache 2.4 funktionierten, überprüfte ich den Browser erneut und diesmal wurde ein Verbindungs-Timeout-Fehler angezeigt. ..
Als ich verschiedene Dinge untersuchte, schien die Ursache ein Fehler in der Firewall oder in Apache zu sein.
Überprüfen Sie die Brandmauer $ firewall-cmd --list-all --permanent Überprüfen Sie Apache $ systemctl status httpd
Wenn ich den obigen Befehl drücke, scheint die Firewall kein Problem zu haben. Bei Apache ist das fehlgeschlagene Wort in der langen englischen Nachricht enthalten. ..
Ja, es wird von Apache verursacht.
Wenn ich das Apache-Fehlerprotokoll überprüfe, wird eine Fehlermeldung wie die doppelte Portnummer 443 in der ssl.conf ausgegeben.
Als ich mit dem Befehl glep mit 443 gesucht habe, wurde es zur Sicherung kopiert
ssl.old.conf ssl.oldest.conf
Die obige Datei widersprach Honmarus ssl.conf. ..
Wenn Sie diese Dateien löschen, starten Sie Apache erneut und überprüfen Sie den Browser
Der Verbindungszeitüberschreitungsfehler wurde behoben und die https-Verbindung war gut.
Es scheint ein Problem mit der Erstellung der Sicherungsdatei zu geben, und das Betriebssystem beurteilt die Erweiterung. Wenn Sie also die Sicherungsdatei erstellen möchten, lautet die richtige Antwort anscheinend wie folgt.
ssl.conf.bak ssl.conf.old
Die Verlängerung war völlig blind. .. Wenn Sie einen unverständlichen Fehler wie diesen erhalten, sollten Sie jetzt darüber nachdenken. Es ist jedoch besser, sich das Fehlerprotokoll genauer anzusehen und dann Maßnahmen zu ergreifen, um ihn zu beheben.
Wenn ich bei der Programmierung auf einen Fehler stoße, ist es grundsätzlich selbstverständlich, das Fehlerprotokoll zu betrachten, aber ich hatte nicht viel Wissen über die Erstellung von Umgebungen und ich hatte nicht einmal das Konzept, dass Apache ein Fehlerprotokoll hat.
Ich war jedoch froh, dass ich den Fehler beheben konnte, da ich mit diesem Fehler einige Kenntnisse über den Aufbau der Umgebung und das Netzwerk gewonnen habe. Ich denke, es wird als positives Ergebnis enden lol
Entschuldigung für den langen Satz!