Ssl
Apache 的虛擬主機僅用於重定向
我有多個域,但我只有一個證書。我創建了兩個虛擬主機,一個帶有域證書:domain.lt 第二個帶有重定向到 domain.lt
Apache 的 SSL 配置:
<IfModule mod_ssl.c> <VirtualHost *:443> <Directory "/var/www/html"> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny Allow from all </Directory> ServerName domain.lt ServerAlias www.domain.lt ServerAdmin webmaster@localhost DocumentRoot /var/www/html ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined Include /etc/letsencrypt/options-ssl-apache.conf SSLCertificateFile /etc/letsencrypt/live/domain.lt/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/domain.lt/privkey.pem Include /etc/letsencrypt/options-ssl-apache.conf <Directory "/var/www/html/main/wp-content/uploads/"> Options -Indexes </Directory> </VirtualHost> <VirtualHost *:443> <Directory "/var/www/html"> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny Allow from all </Directory> ServerName domain.pk ServerAlias www.domain.pk ServerAlias domain.fi ServerAlias www.domain.fi ServerAlias domain.eu ServerAlias www.domain.eu ServerAlias domain.hk ServerAlias www.domain.hk ServerAlias domain.ae ServerAlias www.domain.ae ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined RewriteEngine on RewriteCond %{HTTP_HOST} ^(www.)?domain.(pk|fi|eu|hk|ae)$ RewriteRule ^(.*)$ https://domain.lt%{REQUEST_URI} [L,R=301] </VirtualHost> </IfModule>
但是我仍然在瀏覽器中收到連接不安全的警告,並且證書僅適用於 domain.lt。在瀏覽器中添加異常後,我被重定向。我怎樣才能做到這一點?
連接的 TLS(SSL) 部分發生在請求的 HTTP 部分之前。
這意味著您必須為瀏覽器請求的域提供有效證書,然後才能發送 HTTP 302/etc 重定向。所有 HTTP 最終都包含在 TLS 加密中。
否則,最終使用者瀏覽器將顯示需要繞過的警告(不是最佳實踐)。