2010-11-06 15 views
15

मेरे पास निर्देशिका में एक .htaccess फ़ाइल है, लेकिन इसका कोई प्रभाव नहीं है (इससे कोई फर्क नहीं पड़ता कि मैंने इसमें क्या रखा है)।क्यों नहीं है। Htaccess का कोई प्रभाव नहीं है?

मेरे apache2.conf फ़ाइल

AccessFileName .htaccess 

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

शामिल यह पहले से ही AccessFileName .htaccess कहा, लेकिन मैं अपने आप को टैग निर्देशिका, इस प्रकार मुझे यकीन है कि अगर यह सही है नहीं कर रहा हूँ गयी।

अधिक जानकारी के लिए किसी भी सलाह और अनुरोध के लिए धन्यवाद।

मेरे .htaccess सामग्री (अब के लिए)

Options +FollowSymlinks 
RewriteEngine on 

RewriteRule .* page.php?arg=$0 
+0

.htaccess में कुछ फर्जी सामान डालने का प्रयास करें और डीआईआर तक पहुंचने पर यह लागू होता है - अगर आपको डीआईआर तक पहुंचने पर 500 मिलते हैं, तो आपको कम से कम पता चलेगा। एचटीएसीएसी को पार्स किया जा रहा है। आप इसे कहां रख रहे हो – Anon

+0

यह उस निर्देशिका में रखा गया है जिसे मैं एक्सेस कर रहा हूं (इस मामले में/var/www/avesta /)। मैंने पहले ही .htaccess फ़ाइल में बहुत सारे फर्जी रखे हैं। मुझे पता है कि इसे पार्स नहीं किया जा रहा है :) – Hubro

उत्तर

19

आप अपने टैग के अनुसार, डेबियन पर हैं। डिफ़ॉल्ट साइट, कम से कम लेनी पर apache2 की डिफ़ॉल्ट कॉन्फ़िगरेशन में,/etc/apache2/साइट-उपलब्ध/000-डिफ़ॉल्ट में परिभाषित की गई है।/Var/www निर्देशिका के लिए इस डिफ़ॉल्ट में AllowOverride None है। तो, यह आपके apache2.conf ओवरराइड हो सकता है।

बेशक, आपको यह सुनिश्चित करना होगा कि साइट सक्षम है। यदि/etc/apache2/साइट-सक्षम/000-डिफ़ॉल्ट मौजूद है और/etc/apache2/साइट-उपलब्ध/000-डिफ़ॉल्ट पर इंगित एक सिम्लिंक है, तो साइट सक्षम है। ऐसी साइट को सक्षम करने के लिए कैननिकल तरीका रूट के रूप में है, a2ensite 000-default

अंत में, एहसास करें कि यदि आपके पास मुख्य कारणों तक पहुंच है, तो प्रदर्शन कारणों से, आपको मुख्य कॉन्फ़िगरेशन (या साइट कॉन्फ़िगरेशन/etc/apache2/साइट-उपलब्ध में साइट कॉन्फ़िगरेशन) का उपयोग करके अपनी साइट को कॉन्फ़िगर करना चाहिए। Htaccess । आगे स्पष्टीकरण के लिए http://httpd.apache.org/docs/2.2/howto/htaccess.html देखें।

+0

धन्यवाद, मैंने 'AllowOverride' को सभी को 000-डिफ़ॉल्ट में बदल दिया। अब मुझे किसी भी पुनर्लेखन तर्क के बिना भी एक आंतरिक सर्वर त्रुटि मिल रही है। कोई विचार? (.htaccess में केवल 'विकल्प + फॉलोसिमलिंक्स' और 'रिवाइटइंजिन ऑन 'शामिल हैं) – Hubro

+0

ऐसा कई कारण हो सकते हैं। अगर आप पूरी तरह से .htaccess हटाते हैं तो क्या आपको एक ही त्रुटि है? साथ ही, ध्यान दें कि आपको नई कॉन्फ़िगरेशन पढ़ने के लिए अपाचे को पुनः लोड करने की आवश्यकता है। मैं आमतौर पर बस पुनरारंभ करता हूं: रूट के रूप में, /etc/init.d/apache2 पुनरारंभ करें। लेकिन, "पुनरारंभ" के बजाय "पुनः लोड" का उपयोग करना भी काम करना चाहिए। – Andrew

+0

मैंने अपाचे को फिर से शुरू किया, हां। यह एक खाली। Htaccess फ़ाइल के साथ काम करता है, लेकिन जैसे ही मैं ' – Hubro

संबंधित मुद्दे