मैं उबंटू में अपाचे में mod_rewrite कैसे सक्षम कर सकता हूं?


13

आप Ubuntu 10.04 में Apache के साथ mod_rewrite कैसे सक्षम कर सकते हैं?

मैं कॉपी करने की कोशिश की rewrite.loadसे /etc/apache2/mods-availableकरने के लिए etc/apache2/mods-enabled, लेकिन यह काम नहीं किया।

जवाबों:


20

इसे आज़माएं: sudo a2enmod rewriteऔर फिर अपाचे को पुनरारंभ करें।


4

ओबिडियन का a2enmod उपयोग करने का उत्तर उचित समाधान है। एंडोल की विधि काम करेगी, लेकिन उन्नयन पर टूट सकती है। A2enmod क्या करता है बस एक प्रतीकात्मक लिंक बनाएं, इसलिए निम्नलिखित दो समान हैं, दोनों उचित, समाधान:

  ln -s /etc/apache2/mods-available/rewrite.load /etc/apache2/mods-enabled/

या

  a2enmod rewrite

हालाँकि, a2enmod अन्य प्रकार की फ़ाइलों के लिए दिखेगा, कुछ में .conf और संभवतः अन्य हैं। इस आदेश को सीखने का कोई कारण नहीं है, हालांकि यह जानना महत्वपूर्ण है कि पृष्ठभूमि में क्या हो रहा है।

फ़ाइल को कॉपी करना किसी भी भविष्य के व्यवस्थापक को आपके साथ बहुत ही अप्रत्याशित बना देगा। :)


खैर, यह सिर्फ स्थानीय परीक्षण के लिए है, इसलिए यह कोई बड़ी बात नहीं है। लेकिन हां, a2enmodवैसे भी आसान है।
नाथन उस्मान

2

वास्तव में, जबकि, गलत समाधान की तरह किया जा रहा है को कॉपी rewrite.load से ./mods-available/ को ./mods-enabled/ काम किया जाना चाहिए था। क्या आपको बाद में अपनी अपाचे को फिर से शुरू करने की याद आई?

किसी भी स्थिति में, ./mods-enabled/ को आमतौर पर ./mods-available/ में संगत फ़ाइलों के लिए सिमिलिंक होना चाहिए । यह, जैसा कि ओब्सीडियन द्वारा उल्लेख किया गया है, कमांड a2enmod और a2dismod द्वारा आसानी से नियंत्रित किया गया है।

मॉड्यूल को सक्षम करने के अलावा, आपको पुनर्लेखन को भी सक्रिय करना होगा। इससे पहले कि आप अपना RewriteCond : s और RewriteRule लिख सकें : उस कॉन्फ़िगरेशन संदर्भ में " RewriteEngine On " होना चाहिए ।


वह भी काम करता है। बस mods- सक्षम में symlinks पर सही अनुमतियाँ सेट करने के लिए याद रखें ... या आप अपने बालों को बाहर खींच लेंगे।
नाथन उस्मान
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.