Mod_Rewrite कैसे सेट करें

अमरीका की एक मूल जनजाति वेब सर्वर इंटरनेट के मुख्य निर्माण खंडों में से एक है, जो वेबसाइटों और अनुप्रयोगों की सेवा करता है। यह कई विकल्पों के साथ एक जटिल प्रणाली है, और सबसे महत्वपूर्ण में से एक है पुनर्लेखन मॉड्यूल, या संक्षेप में "mod_rewrite"। इस लेख में, हम mod_rewrite के उपयोगों पर एक नज़र डालेंगे, फिर यह पता लगाएंगे कि इसे अपनी अपाचे-आधारित साइट पर कैसे सेट किया जाए।

अपाचे रीराइट मॉड्यूल का उद्देश्य

इस मॉड्यूल का उद्देश्य विभिन्न उपयोगी तरीकों से URL को फिर से लिखना है। इसका मतलब यह है कि जब उपयोगकर्ता आपकी वेबसाइट पर एक यूआरएल (या तो उसे टाइप करके या उसमें शामिल एक लिंक का चयन करके) के माध्यम से पहुंचते हैं, तो वे दूसरे यूआरएल पर "समाप्त" हो जाएंगे। ऐसा करने के कई कारण हो सकते हैं।

उपयोगकर्ताओं को पुनर्निर्देशित करना

आप mod_rewrite का उपयोग उपयोगकर्ताओं को पुराने, पुराने पृष्ठों से जो अभी भी खोज परिणामों में दिखाई दे सकते हैं, नए, अप-टू-डेट पृष्ठों पर निर्देशित करने के लिए कर सकते हैं। उदाहरण के लिए, मान लें कि आपके पास एक पृष्ठ है https://www.mysite.com/review2015; अगर कोई इसे एक कड़ी के रूप में देखता है और इसे चुनता है, तो आप उन्हें निर्देशित करने के लिए एक पुनर्लेखन नियम का उपयोग कर सकते हैं http://www.mysite.com/review2019.

instagram viewer

URL याद रखने में आसान

आपने शायद ई-कॉमर्स से संबंधित यूआरएल के साथ लिंक देखे होंगे जैसे https://www.thestore.net/3d78654954c29ace998658. डेवलपर्स इस तरह के लेबल का उपयोग यह सुनिश्चित करने के लिए करते हैं कि आइटम में एक विशिष्ट पहचानकर्ता है, लेकिन गैर-तकनीकी प्रकारों के लिए इसे याद रखना मुश्किल है।

सौभाग्य से, एक फिर से लिखने का नियम आपको एक अच्छा यूआरएल प्रचारित करने में मदद कर सकता है, जैसे https://www.thestore.net/notebooks/spiral/3-subject-spiral/, जो, जब अनुसरण किया जाता है, तो एक विज़िटर को बदसूरत URL वाले विज़िटर की ओर ले जाता है।

अद्वितीय पृष्ठ नाम

वेब के शुरुआती दिनों में, जब आप किसी वेबसाइट पर जाते थे तो पेज फाइलों का वास्तविक नाम देखना आम बात थी। उदाहरण के लिए, किसी वेबसाइट का "हमारे बारे में" पृष्ठ "हमारे बारे में" हो सकता है http://www.someguys.org/about.html."

लेकिन कुछ ऐसे कारण हैं जिन्हें आप अब ज्यादा नहीं देखते हैं। पहला यह है कि कई वेबसाइटें सामग्री प्रबंधन प्रणालियों द्वारा चलाई जाती हैं, जिनमें केवल कुछ ही वास्तविक पृष्ठ फ़ाइलें होती हैं। शेष सामग्री गतिशील रूप से जोड़ दी जाती है क्योंकि पृष्ठ प्रस्तुत किया जाता है, इसलिए सभी पृष्ठों को ऐसा लग सकता है कि उनके पास एक ही यूआरएल है, जैसे " http://www.someguys.org/index.php." URL पुनर्लेखन आपको अपनी वेबसाइट को प्रबंधित करने के लिए गतिशील CMS का उपयोग करते हुए, इन अलग-अलग पृष्ठों की उपस्थिति की अनुमति देता है।

अधिक समझने योग्य URL

जब आसानी से समझने योग्य यूआरएल होते हैं तो सर्च इंजन पेजों को उच्च रैंक देते हैं। इसका मतलब है कि वेबसाइटों के लिए "जैसे URL" होना फायदेमंद है। https://www.thecompany.com/services/consulting" की बजाय " https://www.thecompany.com/index.php? section=services&page=consulting," चूंकि अंतिम भाग URL की तुलना में कोड की तरह अधिक दिखता है।

पुनर्लेखन सुनिश्चित करता है कि आप यूआरएल के नजरिए से हमेशा अपना सर्वश्रेष्ठ चेहरा सामने रख रहे हैं।

अपनी साइट पर mod_rewrite कैसे सेट करें

Apache पर URL पुनर्लेखन का उपयोग करने के लिए दो मुख्य घटकों की आवश्यकता होती है:

  • अपाचे के भीतर वास्तविक पुनर्लेखन मॉड्यूल को सक्षम करना
  • एक .htaccess फ़ाइल में आवश्यक पुनर्लेखन नियमों को सूचीबद्ध करना।

जबकि URL पुनर्लेखन के लिए उपयोग IIS या nginx, mod_rewrite जैसे अन्य वेब सर्वरों पर समान रूप से लागू होते हैं और नीचे दी गई विधियाँ केवल Apache पर लागू होंगी।

अपाचे में पुनर्लेखन फ़ंक्शन सक्षम करें

सबसे पहले, आपको अपने अपाचे इंस्टॉलेशन में रीराइटिंग फंक्शन को ऑन करना होगा।

  1. आपको यह पता लगाना होगा कि आपकी अपाचे की कॉन्फ़िगरेशन फ़ाइल कहाँ स्थित है। यह आपके द्वारा उपयोग किए गए इंस्टॉलर पर निर्भर करेगा।

    • विंडोज़ पर आपको अपाचे इंस्टॉल निर्देशिका के तहत "/ conf" नामक निर्देशिका की तलाश करनी चाहिए।
    • macOS के लोकप्रिय XAMPP इंस्टॉलर पर, यह /Applications/XAMPP/xamppfiles/apache2/conf.
    • लिनक्स पर, यह /etc/apache2 निर्देशिका में दिखाई देगा। किसी भी स्थिति में, आप "httpd.conf," "http.conf," या "apache2.conf" नामक फ़ाइल की तलाश कर रहे हैं, ताकि आप इन्हें देखने के लिए अपने OS की खोज सुविधा का भी उपयोग कर सकें।
  2. कॉन्फिग फाइल को टेक्स्ट एडिटर में खोलें, जैसे विंडोज़ नोटपैड या पाठ संपादित करें मैकोज़ पर।

  3. "#LoadModule rewrite_module मॉड्यूल/mod_rewrite.so" लाइन देखें और शुरुआत में हैशटैग हटा दें। यह एक टिप्पणी को दर्शाता है, जिसका अर्थ है कि जब यह वहां होता है, तो अपाचे सर्वर उस लाइन पर सब कुछ अनदेखा कर देगा। हैशटैग हटाएं, और अगली बार अपाचे उस लाइन को शुरू होने पर निष्पादित करेगा।

  4. कॉन्फिग फाइल को सेव करें और अपाचे सर्वर को फिर से शुरू करें।

  5. वैकल्पिक रूप से, Linux के कुछ संस्करणों पर आपको कुछ निर्देशिकाएँ दिखाई देंगी जैसे "/etc/apache2/mods-available" और "/ etc/apache2/mods- सक्षम।" इनमें कॉन्फ़िगरेशन फ़ाइलों के बिट्स होते हैं जिन्हें एक साथ रखा जाता है गतिशील रूप से। इस स्थिति में, आप पहले रीराइट मॉड्यूल को सक्षम करने के लिए निम्न कमांड चला सकते हैं, फिर अपाचे सर्वर को पुनरारंभ करें:

    sudo a2enmod फिर से लिखना
    systemctl पुनरारंभ apache2
  6. अब आपका अपाचे सर्वर आपके लिए यूआरएल को फिर से लिखने के लिए तैयार है। केवल अब आपको यह बताने की जरूरत है कि किन लोगों को फिर से लिखना है, और किन परिस्थितियों में।

आपकी साइट पर Mod_Rewrite नियमों को परिभाषित करना

आपको नियमित अभिव्यक्ति भाषा का उपयोग करके mod_rewrite के नियमों को परिभाषित करने की आवश्यकता होगी। सौभाग्य से, कुछ सहायता उपलब्ध है। किसी दिए गए पुनर्लेखन के लिए जिसे आप सक्षम करना चाहते हैं, आप VisioSpark के नियम जनरेटर जैसे उपकरण का उपयोग कर सकते हैं।

  1. वह URL दर्ज करें जिससे आप फिर से लिखना चाहते हैं, अर्थात वह URL जिसे उपयोगकर्ता दर्ज करेगा, में से: मैदान।

  2. उस यूआरएल को दर्ज करें जिसे आप फिर से लिखना चाहते हैं, यानी वह जहां उपयोगकर्ता समाप्त होगा, में सेवा: मैदान।

    GUI रीराइट रूल जेनरेटर आपको RegEx सीखने के प्रयास को बचा सकता है
  3. कैप्चा नियंत्रण का चयन करें, फिर चुनें जाओ. जनरेटर को तब "RewriteRule.

    यदि आपको कोई अन्य जनरेटर मिल जाए तो ये चरण थोड़े भिन्न हो सकते हैं, लेकिन उम्मीद है कि उसी बॉलपार्क में।

आपकी साइट के लिए Mod_Rewrite नियम दर्ज करना

तो यह बहुत अच्छा है, इन नियमों को बनाने का एक बिंदु-और-क्लिक तरीका। लेकिन आप उन्हें कहाँ रखते हैं?

किसी वेबसाइट पर नियमों का उपयोग करने के लिए, आपको वेबसाइट के मूल में ".htaccess" नामक एक फ़ाइल बनानी होगी। यह कुछ हद तक प्लेटफ़ॉर्म-निर्भर है जहाँ किसी विशेष वेबसाइट के लिए फ़ाइलें संग्रहीत की जाती हैं, लेकिन आपको अपनी वेबसाइट को पहले स्थान पर तैनात करने के लिए यह पता लगाना होगा।

उस नाम की एक फ़ाइल पहले से ही हो सकती है। अगर ऐसा है तो बढ़िया! आप बस उस फाइल में अपनी लाइनें जोड़ सकते हैं।

  1. नाम के साथ एक नई टेक्स्ट फ़ाइल बनाएँ ".htaccess"आपकी वेबसाइट के रूट में।

  2. पहली पंक्ति में, नीचे दिया गया कोड दर्ज करें। यह उस सर्वर को बताता है जिसे आप वर्तमान वेबसाइट के लिए पुनर्लेखन सक्षम करना चाहते हैं।

    इंजन को फिर से लिखें
  3. इसके बाद, जनरेटर के साथ आपके द्वारा बनाई गई प्रत्येक पंक्ति को जोड़ें। हमारी फाइल की शुरुआत इस तरह दिखेगी:

    इंजन को फिर से लिखें
    पुनर्लेखन नियम ^ नोटबुक/सर्पिल/3-विषय-सर्पिल/$ /3d78654954c29ace998658?&%{QUERY_STRING}
  4. किसी भी अपाचे कॉन्फ़िगरेशन परिवर्तन के साथ, सर्वर को पुनरारंभ करना एक अच्छा विचार है।

Mod_Rewrite का उपयोग करने में समय लगता है, लेकिन परिणाम इसके लायक हैं

अपाचे पर mod_rewrite फ़ंक्शन का उपयोग करना निश्चित रूप से कुछ प्रयास करता है। आपको टेक्स्ट-आधारित कॉन्फ़िगरेशन फ़ाइलों के साथ फील करना होगा, उन फ़ाइलों में बहुत बारीक नियमित अभिव्यक्ति प्राप्त करने का तरीका निकालना होगा, और यह जानना होगा कि सेवा को मैन्युअल रूप से कैसे रोकें और पुनः आरंभ करें। इससे पहले कि आप कुछ ऐसा प्राप्त करें जिसके परिणामस्वरूप कोई त्रुटि न हो और सही ढंग से व्यवहार करे, इसके लिए बहुत अधिक परीक्षण-और-त्रुटि की आवश्यकता होगी।

उस ने कहा, एक बार जब आप इसे समझ लेते हैं, तो आपको mod_rewrite से कुछ अच्छा लाभ मिलेगा। आपके विज़िटर आपके URL को बेहतर ढंग से याद रखने में सक्षम होंगे, और Google पर आपकी रैंकिंग में सुधार होने की संभावना है। परिणामी "सुंदर यूआरएल" सिर्फ दिखाने के लिए नहीं हैं, आखिरकार। वे कार्यात्मक भी हैं।

instagram story viewer