2013-04-11 28 views
5

Tôi cần chuyển hướng một miền https://www.mydomain.com to https://mydomain.com. Tôi sử dụng .htaccess này và nó không hoạt động đối với tôi.Chuyển hướng tất cả https://www.mydomain.com đến https://mydomain.com bằng cách sử dụng htaccess (2 SSL HOST trong cpanel)

Trước đây tôi có cert ssl cho https://www.mydomain.com và nó đã phá sản, chúng tôi đăng ký ssl mới cho các máy chủ https://mydomain.com

Trong WHM chỉ có một máy chủ ssl nhưng trong cpanel có hai host ai cũ www.mydomain.commydomain.com (Hiệu ứng này có được chuyển hướng không?)

.htaccess ở bên dưới.

RewriteEngine on 

RewriteCond %{HTTPS} on 
RewriteCond %{HTTP_HOST} ^www\.mydomain\.com$ [NC] 
RewriteRule ^(.*)$ https://mydomain.com/$1 [R=301,L] 

RewriteCond %{HTTPS} off 
RewriteCond %{HTTP_HOST} ^(www\.)?mydomain\.com$ [NC] 
RewriteRule ^(.*)$ https://mydomain.com/$1 [R=301,L] 

Tôi luôn nhận được cảnh báo bảo mật khi tôi nhập https://www.mydomain.com.

Tôi đã làm gì sai ở đây?

Cảm ơn trước

+0

Sự khác biệt giữa 2 & 3 –

+0

Tôi sử dụng {HTTPS_HOST} trong 3rd – Pus

Trả lời

0

sai lầm ở đây là gì?

Sai lầm là có không có biến số %{HTTPS_HOST}. %{HTTP_HOST} là tiêu đề yêu cầu (Máy chủ) là một phần của giao thức HTTP. Bạn không cần dòng thứ 3, những gì bạn muốn làm là kiểm tra xem yêu cầu có phải là HTTPS sử dụng biến số %{HTTPS} như bạn đang làm trong điều kiện đầu tiên không:

RewriteCond %{HTTPS} off 
RewriteCond %{HTTP_HOST} ^(www\.)?mydomain\.com$ [NC] 
RewriteRule ^(.*)$ https://mydomain.com/$1 [L,R=301] 

RewriteCond %{HTTPS} on 
RewriteCond %{HTTP_HOST} ^www\.mydomain\.com$ [NC] 
RewriteRule ^(.*)$ https://mydomain.com/$1 [L,R=301] 
+0

Cảm ơn bạn đã trả lời câu trả lời tuyệt vời của nó nhưng tôi không thể chuyển hướng "https://www.mydomain.com" tới "https://mydomain.com". Vấn đề chính ở đây là, tôi đã có giấy chứng nhận ssl "https://www.mydomain.com" vì vấn đề máy chủ ssl là phá vỡ và mới cài đặt ssl trong "http://mydomain.com". Đó có phải là vấn đề không? Những gì bạn nói? – Pus

Các vấn đề liên quan