.htaccess "विकल्प यहां अनुमति नहीं है"




options httpd.conf (7)

मेरे पास यह है। Htaccess में:

विकल्प + FollowSymLinks

और मुझे apache error_log में निम्न त्रुटि मिलती है:

.htaccess: Options not allowed here

यहां मेरी httpd.conf फ़ाइल का हिस्सा दिया गया है:

#htdocs symlinks here
<Directory /Users/you/code/my/folder>
    Options All
    AllowOverride All
</Directory>

<Directory />
    Options All
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>

<Directory "/Applications/XAMPP/xamppfiles/htdocs">
    Options All 
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>

इसलिए मैं ऑप्शन ऑल सेट कर रहा हूं और हर जगह ऑर्डर ओवरराइड करता हूं, लेकिन अभी भी मुझे विकल्प सेट करने की अनुमति नहीं है। क्या कोई इस बारे में समझ सकता है?

धन्यवाद, श्रीमान बी


क्या आपके डोमेन को एल्ग के लिए आवश्यक सभी आवश्यकताओं को पूरा करने पर होस्ट किया गया है? विशेष रूप से, mod_rewrite उपलब्ध है?

आपके द्वारा किए गए सभी चरणों को दोबारा जांचें।

यदि mod_rewrite काम कर रहा है ... क्या आपके पास अपने सर्वर पर अपाचे के कॉन्फ़िगरेशन (http.conf) तक पहुंच है? यदि हां, तो निम्न पंक्तियां जोड़ें (पथ समायोजित करें):

सभी को ओवरराइड करें


मैंने अभी XAMPP का नवीनतम संस्करण स्थापित किया है और यह साझा करने के लिए सोचा कि मैंने एक ही समस्या को हल किया है।

यह एक एक्सएएमपीपी विशिष्ट सेटिंग है (हर नए एक्सएएमपीपी इंस्टॉल के साथ)। आज के रूप में सबसे हालिया अद्यतित XAMPP - XAMPP 1.8.3 में /xampp/apache/conf/extra/httpd-xampp.conf में एक सेटिंग है जो आपके "सर्वर त्रुटि" संदेश का कारण बन रही है।

और फिर आपको अपने त्रुटि लॉग में निम्न त्रुटि मिलती है:

.htaccess: Options not allowed here

ओपन /xampp/apache/conf/extra/httpd-xampp.conf और ढूंढें:

<Directory "/xampp/htdocs/xampp">
    <IfModule php5_module>
        <Files "status.php">
            php_admin_flag safe_mode off
        </Files>
    </IfModule>
    AllowOverride AuthConfig
</Directory>

और बदलें

AllowOverride AuthConfig

साथ में

AllowOverride All

परिवर्तन के बाद कोई प्रमाणीकरण या प्रमाणीकरण की आवश्यकता नहीं होगी, जिसे आप इसे अपने httpd.conf, अतिरिक्त confs या .htaccess में निर्दिष्ट करते हैं।

आप AllowOverride http://httpd.apache.org/docs/current/en/mod/core.html#allowoverride विकल्प के लिए अपाचे दस्तावेज़ को भी पढ़ना चाह सकते हैं और अधिक इष्टतम और सुरक्षित सेटिंग चुन सकते हैं जो आपको अपने उपयोग करने की अनुमति देगा सर्वर त्रुटि के बिना। htaccess।

यह भी ध्यान रखें कि आप उन परिणामों के आधार पर ऊपर दिए गए नियम को फिर से लिखने के लिए एक बेहतर स्थान पा सकते हैं, जिन्हें आप प्राप्त करना चाहते हैं। मेरे मामले में यह एक संतोषजनक परिवर्तन है।


Options +FollowSymLinks बदलें Options +FollowSymLinks में Options +FollowSymLinks Options +SymLinksIfOwnerMatch .htaccess फ़ाइल के सभी उदाहरणों में मैच करें, सुरक्षा जोखिम के कारण कई सर्वर पर निम्नांकित लिंक अक्षम कर दिए गए हैं।


ध्यान दें कि यह एक एक्सएएमपीपी-विशिष्ट मुद्दा है। एक्सएएमपीपी XAMPP/etc/extra/ जो httpd.conf ओवरराइड में स्थित कुछ अतिरिक्त विन्यास फाइल लोड करता है। मेरे लिए अपमानजनक फ़ाइल http-userdir.conf जो उपयोगकर्ता अनुरोधों के लिए नियम लागू करती है और इसमें AllowOverride FileInfo AuthConfig Limit Indexes और उस लाइन को AllowOverride All को बदलने के लिए AllowOverride All को वास्तव में मेरी समस्या का समाधान किया है।

यह केवल ओएस एक्स पर आपकी / साइट्स / निर्देशिका से दी गई फाइलों पर लागू होता है। मुझे नहीं पता कि विंडोज संस्करण उपयोगकर्ताडियर का बिल्कुल उपयोग करता है या यहां तक ​​कि एक समान नियम भी है।


आपको निर्देशिका संदर्भ में "विकल्प" के लिए ओवरराइड की अनुमति देनी होगी। इसकी कोई आवश्यकता नहीं है:

vhost/directory config:
    AllowOverride All

लेकिन केवल 'विकल्प' के लिए ओवरराइड की अनुमति देने के लिए:

    AllowOverride {Existing options to override} +Options

मुझे लगता है कि आपके अपाचे कॉन्फ़िगरेशन में एक वैश्विक AllowOverride सेटिंग है जो इसे अस्वीकार करती है। क्या आप अपने httpd.conf में AllowOverride के लिए grep कर सकते हैं?


आपके मुख्य httpd.conf फ़ाइल में वैश्विक AllowOverride सेटिंग्स को बदलने के बजाय, यदि आपके पास httpd-vhosts.conf फ़ाइल है, तो आप प्रत्येक होस्ट एंट्री में सभी विशिष्ट निर्देशों को निर्देशिका विशिष्ट अनुमति देना चाहते हैं, ताकि आप इसे प्राप्त कर सकें, ताकि आप इसे रख सकें सर्वर सर्वर के बाकी हिस्सों पर प्रतिबंधक सेट।