पथ को फिर से लिखने के लिए .htaccess फ़ाइल सक्षम करना (काम नहीं करना)


17

सभी ट्यूटोरियल मुझे संपादित करने के लिए कहते हैं: /etc/apache2/sites-available/defaultलेकिन यह फ़ाइल मेरे लिए मौजूद नहीं है। इस फ़ाइल के भीतर मुझे संपादित करना होगा:

<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
#AllowOverride All
#AllowOverride AuthConfig FileInfo Indexes Limit Options=All, MultiViews        
Order allow,deny
allow from all </Directory>

फ़ाइल कैसी दिखनी चाहिए और क्या मुझे इसे स्वयं बनाना चाहिए?

Aslo मैं एक 000-default.confफ़ाइल है, लेकिन ऊपर 'कोड' या तो वहाँ नहीं है।

जवाबों:


59

Apache संस्करण 2.4 और बाद के लिए, आपको जाना होगा

/etc/apache2/apache2.conf

आपको उस फ़ाइल को संपादित करना होगा (आपके पास रूट अनुमति होनी चाहिए)। इस तरह निर्देशिका पाठ बदलें;

<Directory /var/www/>
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

अब अपाचे को फिर से शुरू करें।

service apache2 restart

मुझे भरोसा है ये काम करेगा।


क्या आप कृपया बता सकते हैं कि यह क्या करता है? यह कैसे .htaccess के साथ टाई करता है? मेरा .htaccess बिल्कुल नहीं पढ़ने में।
chx101

1
यहां महत्वपूर्ण पंक्ति है AllowOverride All, इसका मतलब है कि सभी सेटिंग्स को .htaccessफाइलों में सेट (ओवरराइड) किया जा सकता है । डॉक्स देखें: httpd.apache.org/docs/2.4/mod/core.html#allowoverride
jacwah

18

Ubuntu 14.04 (और Apache 2.4) डिफ़ॉल्ट डॉक्यूमेंटरूट को / var / www से / var / www / html में बदल दिया गया था।

सबसे पहले a2enmod को सक्षम करें

sudo a2enmod rewrite 

तथा

sudo service apache2 restart

sudo nano /etc/apache2/sites-enabled/000-default.conf

इन लाइनों को अंत में जोड़ें

<Directory /var/www/html>
    AllowOverride All
 </Directory>

तथा

sudo service apache2 restart

1
यह समाधान मेरे लिए काम करता है क्योंकि, मुझे पहले mod_rewrite को सक्षम करना होगा। बहुत बहुत धन्यवाद।
kishor10d

1
यह वास्तव में अपाचे 2.4 के लिए काम करता था। मेरा दिन बचाया। Maing apache2.conf संपादन के बाद भी .htaccess काम नहीं किया लेकिन इस तरह से यह काम कर रहा है।
फैसल सरफराज

9

यदि आप प्रत्येक अपग्रेड / अपडेट में एक ही कॉन्फ़िगरेशन को दोहराना नहीं चाहते हैं

सबसे अच्छा तरीका है:

एक कॉन्‍फ़‍िगर फ़ाइल संपादित करें या बनाएं

/etc/apache2/conf-available/httpd.conf

जोड़ना

<Directory /var/www/> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory>

कॉन्फ़िग फ़ाइल सक्षम करें

sudo a2enconf httpd

पुनः प्रारंभ करें या अपाचे को पुनः लोड करें

sudo service apache2 restart

या

sudo service apache2 reload

हॊ गया!

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.