SSL証明書を使用してapache2にスプリングブートアプリケーションを設定しようとしていますが、実際に運用する前に、すべての手順が正しいかどうかはわかりません。私はhttpsを使用するので、443Apache + SpringBoot + SSL
に80からすべてのコールをリダイレクトする必要があり、私のjarファイルのアプリケーションがポート8080で展開されているので、私は最初、このように
<VirtualHost *:80>
ServerName www.example.com
ServerAdmin [email protected]
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
ProxyPreserveHost On
ProxyPass/http://localhost:8080/
</VirtualHost>
そして、これは素晴らしい仕事をしていたが、私の/etc/apache2/sites_available/000-default.conf
を編集しました私は単なるHTTP
を必要なときに、今私はCA証明書を持って、私は/etc/apache2/ssl/certs/
と/etc/apache2/ssl/private/
にCRTとキーを入れて、
default-ssl.conf
を編集しましたこのようにこのように
<IfModule mod_ssl.c>
<VirtualHost _default_:443>
ServerAdmin [email protected]
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
SSLEngine on
SSLCertificateFile /etc/ssl/certs/xxxxxxxxxxxx.crt
SSLCertificateKeyFile /etc/ssl/private/yyyyyyyyyyy.key
SSLCertificateChainFile /etc/apache2/ssl/certs/sf_bundle-g2-g1.crt
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory /usr/lib/cgi-bin>
SSLOptions +StdEnvVars
</Directory>
</VirtualHost>
</IfModule>
、私は右、Apacheの上でSSLを有効にしている必要がありますか? すべての呼び出しを80から443にリダイレクトする方法とそれに続くワークフローが正しい場合は
あなたは正しいです、それは春に心配はありません、それだけでアプリケーションと言うことでしたポート8080でリッスンするので、最初にプロキシとして動作するようにApacheに指示してから、443にリダイレクトします。 – besmart
Apacheをプロキシとして機能させたい場合は、(ポート80のような)1つのポート上のすべての着信トラフィックをSpringアプリケーションに転送するように設定します。しかし、 "プロキシ"はこの場合の説明的な用語に過ぎないので、実際にはApacheをプロキシにすることはできません。 SSL暗号化はもう一度別の話です。ポート80でのHTTPトラフィックとポート443でのHTTPSトラフィックを持つことは、標準化された規約にすぎませんが、技術的には、設定した任意のポートでSSL暗号化されたHTTPSトラフィックを持つことができます。 – anothernode