Apache-2.2
Apache HTTPS 從舊域重定向到新 HTTPS 域
我曾經擁有一個曾經擁有 SSL 證書的域,現在它仍然擁有。但是我已經更改了域,並且我還為該新域創建了一個新的 SSL 證書。
我仍然有使用者通過它訪問該網站
https://shabbasheep.myolddomain.com
,它給了我**This is probably not the site that you are looking for!
**但是當他們通過它訪問該站點時
shabbasheep.myolddomain.com
,會將它們正確重定向到shabbasheep.mynewdomain.info
這是我的 apache 條目的樣子,從這裡得到一個想法
<VirtualHost *:80> ServerName shabbasheep.myolddomain.com RewriteEngine On RewriteCond %{HTTP_HOST} shabbasheep.myolddomain.com$ RewriteRule ^(/(.*))?$ https://shabbasheep.mynewdomain.info$1 [L,NC,R=301] </VirtualHost>
我的 SSL
<VirtualHost *:443> ServerName shabbasheep.mynewdomain.info ServerAlias www.mynewdomain.info RewriteEngine On RewriteCond %{HTTP_HOST} shabbasheep.myolddomain.com$ RewriteRule ^(/(.*))?$ https://shabbasheep.mynewdomain.info$1 [L,NC,R=301] SSLEngine on SSLCertificateFile "mypathto.crt" SSLCertificateKeyFile "mypathto.pem" SSLCACertificateFile "mypathto.crt" ... ... ... </VirtualHost>
如果這是一個重複的問題,請提前道歉,我確實環顧四周,但似乎沒有任何效果,或者可能是由於我缺乏理解。
有人可以指導我嗎?
提前致謝。
您需要為舊域創建一個單獨的虛擬主機,其中安裝了舊域的證書和私鑰。然後你可以把你的重寫規則放在那裡。
目前,您的虛擬主機將擷取所有域,因此它將新域證書提供給連接到伺服器的客戶端,包括想要連接到舊域的客戶端。