Apache-Httpd
將沒有 SSL 的域重定向到有 SSL 的域
我們公司最近更改了我們的一個農產品網站的域名,並希望將所有來自舊網站的流量重定向到新網站。
現在出現隱私錯誤,因為 ssl 位於 www.newdomain.com 而不是 www.olddomain.com。
無論如何將 www.olddomain.com 重定向到 www.newdomain.com 而不會報告此錯誤?我懷疑我還需要在舊域上安裝 SSL,但如果可能的話,我想避免這種情況。
到目前為止,我已嘗試通過 vhost 和/或 htaccess 執行此操作,並在新域 conf 文件中為舊域起別名,例如:
RewriteCond %{HTTP_HOST} ^olddomain.com [NC,OR] RewriteCond %{HTTP_HOST} ^www.olddomain.com [NC] RewriteRule ^(.*)$ https://www.newdomain.com/$1 [L,R=301,NC]
您需要兩個域的 SSL 證書。為了從一個重定向到另一個,您首先需要一個證書
olddomain.com
,www.olddomain.com
以便瀏覽器接受重定向指令。然後,您需要一個證書www.newdomain.com
來託管新域。因此,您將為僅重定向到新域的舊域設置一個虛擬主機。
請參閱 apache重定向。
<VirtualHost *:443> ServerName olddomain.com Redirect permanent / https://www.newdomain.com/ SSLEngine on SSLCertificateFile /path/to/olddomain.com/cert.pem SSLCertificateKeyFile /path/to/olddomain.com/privkey.pem SSLCertificateChainFile /path/to/olddomain.com/chain.pem </VirtualHost> <VirtualHost *:443> ServerName www.newdomain.com DocumentRoot /var/www/html SSLEngine on SSLCertificateFile /path/to/www.newdomain.com/cert.pem SSLCertificateKeyFile /path/to/www.newdomain.com/privkey.pem SSLCertificateChainFile /path/to/www.newdomain.com/chain.pem </VirtualHost>