2016-02-02 9 views
5

के साथ किसी अन्य डोमेन पर रीडायरेक्ट करता है मेरे पास कोई संकेत नहीं है कि यह विफल क्यों होता है। मैं बस सभी डोमेन को www.maindomain.com पर रीडायरेक्ट करना चाहता हूं और http से https पर, मुझे क्या याद आ रहा है?Apache2 एसएसएल

# redirect http to https  
RewriteCond %{HTTPS} off 
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] 

# redirect without www to www 
RewriteCond %{http_host} ^maindomain.com [nc] 
RewriteRule ^(.*)$ https://www.maindomain.com [r=301,nc] 

# redirect another domain to www.maindomain.com  
RewriteCond %{HTTPS} off # this i was missing 
RewriteCond %{HTTP_HOST} ^(www\.)?anotherdomain.com [NC] 
RewriteRule ^(.*)$ https://www.maindomain.com [R=301,L] 
  1. https:/www.maindomain.com/ को http://maindomain.com काम करता है
  2. https:/www.maindomain.com/ को http://anotherdomain.com काम करता है
  3. https:/www.maindomain.com/ को https://anotherdomain.com विफल रहता है
+0

अजीब, रिवाइटकॉन्ड% {HTTPS} बंद टिप्पणी के साथ टिप्पणी, संकेत अभी काम कर रहा था, लेकिन जवाब हटा दिया गया है, जैसा कि मैं इसे स्वीकार करना चाहता था, मैं तीसरे पुनर्निर्देशन में एक दूसरा रिवाइटकंड खो रहा था –

उत्तर

1

एक और डोमेन के लिए HTTPS पुनर्निर्देशन करने के लिए HTTP विफल रहा क्योंकि आपका नियम निम्न पंक्ति याद आ रही है :

RewriteCond %{HTTPS} off 

प्रयास करें:

# redirect another domain to www.maindomain.com  

RewriteCond %{HTTPS} off 

RewriteCond %{HTTP_HOST} ^(www\.)?anotherdomain.com [NC] 
RewriteRule ^(.*)$ https://www.maindomain.com [R=301,L] 
0

आप इस कोशिश कर सकते हैं:

RewriteEngine On 
RewriteCond %{HTTPS} !on 
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} 

बस कॉपी और पेस्ट .htaccess फ़ाइल में उपरोक्त कोड तो पूरी वेबसाइट पुनः निर्देशित किया जाएगा "https" जब ब्राउज़र "http" मोड में खोला गया है। ब्राउजर को .htaccess में यूआरएल रीराइटिंग का उपयोग करके रीडायरेक्ट किया जाता है।