OK
Daher habe ich Apache httpd
vor einiger Zeit installiert und bin kürzlich darauf zurückgekommen, um zu versuchen, SSL einzurichten und es für mehrere verschiedene Tomcat-Server bereitzustellen.
Im Moment habe ich zwei völlig separate Tomcat-Instanzen, die bis zu leicht unterschiedlichen Versionen (eine für Entwickler und eine für Demo) meine Web-App an zwei verschiedenen Ports bereitstellen:
example.com:8081
example.com:8082
Ich habe erfolgreich (Januar zurück) verwendet mod_jk
zu bekommen , httpd
die gleichen Tomcat Instanzen zu dienen http://www.example.com:8090/dev
und http://www.example.com:8090/demo
(8090 cos ich eine andere App auf 8080 über Jetty in diesem Stadium ausgeführt habe) in dem folgenden Code httpd.conf
:
LoadModule jk_module modules/mod_jk.so
JkWorkersFile conf/workers.properties
JkLogFile logs/mod_jk.log
JkLogLevel debug
<VirtualHost *:8090>
JkMount /devd* tomcatDev
JkMount /demo* tomcatDemo
</VirtualHost>
Ich versuche nicht, SSL zu aktivieren.
Ich habe folgendes hinzugefügt zu httpd.conf
:
Listen 443
<VirtualHost _default_:443>
JkMount /dev* tomcatDev
JkMount /demo* tomcatDemo
SSLEngine on
SSLCertificateFile "/opt/httpd/conf/localhost.crt"
SSLCertificateKeyFile "/opt/httpd/conf/keystore.key"
</VirtualHost>
Aber wenn ich versuche, Apache mit neu zu starten apachectl restart
(ja, nachdem ich die andere App heruntergefahren habe, die ich erwähnt habe, damit sie nicht mit https-Verbindungen spielt), erhalte ich ständig den Fehler:
Ungültiger Befehl 'SSLEngine', möglicherweise falsch geschrieben oder von einem Modul definiert, das nicht in der Serverkonfiguration enthalten ist. httpd läuft nicht und versucht zu starten
Ich habe in die Richtung geschaut und in der httpd/modules
Tat gibt es keine mod_ssl
, nur mod_jk.so
und httpd.exp
.
Ich habe versucht, mit yum zu installieren mod_ssl
, es heißt, es ist bereits installiert. In der Tat kann ich orten mod_ssl.so
in /usr/lib/httpd/modules
aber das ist nicht der Weg, wo ich installiert habe , httpd
das ist /opt/httpd
und in der Tat /usr/lib/httpd
enthält nichts anderes als die modules
Richt.
Kann mir jemand sagen, wie ich mod_ssl
meinen installierten Speicherort ordnungsgemäß installieren soll, httpd
damit ich diesen Fehler überwinden kann?
mod_ssl.so
fehlte die Installation völlig. Es stellt sich heraus, dass es von der Basisinstallation getrennt ist und sich unter dem Paketmod_ssl
in der yum-Paketverwaltung befand. Heruntergeladen mityum install mod_ssl
dann erschien es immodules
Ordner.ssl.conf
Datei mit den erforderlichen Konfigurationen hinzugefügt hat.Ich habe festgestellt, dass ich das SSL-Modul in Apache aktivieren muss (offensichtlich Präfixbefehle mit,
sudo
wenn Sie nicht als root ausgeführt werden):Starten Sie dann Apache neu:
Weitere Details zu SSL in Apache für Ubuntu / Debian hier .
quelle
a2enmod
ist aus der Debian-Welt.Versuchen Sie die Installation
mod_ssl
mit dem folgenden Befehl:Laden Sie anschließend Ihren Apache-Server neu und starten Sie ihn mit den folgenden Befehlen neu:
Dies sollte in den meisten Fällen funktionieren.
quelle
Ich benutzte:
und es funktionierte in meinem Amazon Linux AMI.
quelle