अपाचे पर एचटीटीपीएस में HTTP को रीडायरेक्ट कैसे करें


HTTP ( हाइपर टेक्स्ट ट्रांसफर प्रोटोकॉल ) एक लोकप्रिय और साथ ही डेटा संचार के लिए मौलिक प्रोटोकॉल है वर्ल्ड वाइड वेब ( WWW) ); आमतौर पर एक वेब ब्राउजर और सर्वर के बीच जो वेब फाइल्स को स्टोर करता है। जबकि HTTPS HTTP का सुरक्षित संस्करण है, जहां अंत में strong S HT का अर्थ strong सुरक्षित HT है।

HTTPS का उपयोग करते हुए, आपके ब्राउज़र और वेब सर्वर के बीच सभी डेटा एन्क्रिप्ट किए जाते हैं। यह ट्यूटोरियल आपको दिखाएगा कि लिनक्स में अपाचे एचटीटीपी सर्वर पर HTTP से HTTPS कैसे रीडायरेक्ट करें।

इससे पहले कि आप अपने डोमेन के लिए अपाचे HTTP से HTTPS सेट कर सकें, सुनिश्चित करें कि आपके पास SSL प्रमाणपत्र स्थापित है और mod_rewrite/a है। मजबूत> अपाचे में सक्षम है। अपाचे पर एसएसएल को सेटअप करने के तरीके के बारे में अधिक जानकारी के लिए, निम्नलिखित गाइड देखें।

  1. How to Create Self-Signed SSL Certificates and Keys for Apache
  2. How to Install Let’s Encrypt SSL Certificate on CentOS/RHEL 7
  3. How to Install Let’s Encrypt SSL Certificate on Debian/Ubuntu

Apache .htaccess फ़ाइल का उपयोग करके HTTP को HTTPS पर पुनर्निर्देशित करें

इस विधि के लिए, सुनिश्चित करें कि mod_rewrite सक्षम है, अन्यथा इसे Ubuntu/Debian सिस्टम पर इस तरह सक्षम करें।

$ sudo a2enmod rewrite	[Ubuntu/Debian]

CentOS/RHEL उपयोगकर्ताओं के लिए, सुनिश्चित करें कि आपकी httpd.conf ( mod_rewrite समर्थन - डिफ़ॉल्ट रूप से सक्षम) में निम्नलिखित पंक्ति है।

LoadModule rewrite_module modules/mod_rewrite.so

अब आपको बस अपने डोमेन रूट डायरेक्टरी में .htaccess फाइल को एडिट या क्रिएट करना होगा और इन पंक्तियों को http से https में रीडायरेक्ट करना होगा।

RewriteEngine On 
RewriteCond %{HTTPS}  !=on 
RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L] 

अब, जब कोई आगंतुक टाइप करता है http://www.yourdomain.com तो सर्वर स्वचालित रूप से HTTP को HTTPS <कोड> https://www.yourdomain.com पर रीडायरेक्ट करेगा।

Apache वर्चुअल होस्ट पर HTTP को HTTPS में रीडायरेक्ट करें

इसके अतिरिक्त, सभी वेब ट्रैफ़िक को HTTPS का उपयोग करने के लिए बाध्य करने के लिए, आप अपनी वर्चुअल होस्ट फ़ाइल को भी कॉन्फ़िगर कर सकते हैं। सामान्यतया, एक SSL होस्ट सक्षम होने पर वर्चुअल होस्ट कॉन्फ़िगरेशन के दो महत्वपूर्ण खंड होते हैं; पहले में गैर-सुरक्षित पोर्ट के लिए कॉन्फ़िगरेशन शामिल हैं 80

दूसरा सुरक्षित पोर्ट 443 के लिए है। अपनी वेबसाइट के सभी पृष्ठों के लिए HTTP को HTTPS पर पुनर्निर्देशित करने के लिए, पहले उपयुक्त वर्चुअल होस्ट फ़ाइल खोलें। फिर नीचे कॉन्फ़िगरेशन जोड़कर इसे संशोधित करें।

NameVirtualHost *:80
<VirtualHost *:80>
   ServerName www.yourdomain.com
   Redirect / https://www.yourdomain.com
</VirtualHost>

<VirtualHost _default_:443>
   ServerName www.yourdomain.com
   DocumentRoot /usr/local/apache2/htdocs
   SSLEngine On
# etc...
</VirtualHost>

फ़ाइल को सहेजें और बंद करें, फिर HTTP को इस तरह से पुनः आरंभ करें।

$ sudo systemctl restart apache2     [Ubuntu/Debian]
$ sudo systemctl restart httpd	     [RHEL/CentOS]

जबकि < VirtualHost > सबसे अनुशंसित समाधान है क्योंकि यह सरल और सुरक्षित है।

आप अपाचे HTTP सर्वर सुरक्षा सख्त लेख के इन उपयोगी वर्गीकरण को पढ़ना पसंद कर सकते हैं:

  1. 25 Useful Apache ‘.htaccess’ Tricks to Secure and Customize Websites
  2. How to Password Protect Web Directories in Apache Using .htaccess File
  3. How to Hide Apache Version Number and Other Sensitive Info
  4. Protect Apache Against Brute Force or DDoS Attacks Using Mod_Security and Mod_evasive

बस इतना ही! इस गाइड से संबंधित किसी भी विचार को साझा करने के लिए, नीचे दिए गए फीडबैक फॉर्म का उपयोग करें। और linux-console.net से हमेशा जुड़े रहना याद रखें।