2012-04-23 15 views
5

मैं PHP फ्रंट नियंत्रक बना रहा हूं। यह मेरी .htaccess फ़ाइल है।.htaccess रीडायरेक्ट से एक फ़ाइल को कैसे रोकें?

<IfModule mod_rewrite.c> 
    RewriteEngine on 
    RewriteRule (.*) controller.php [L] 
</IfModule> 

यह कोड सभी यूआरएल को controller.php पर रीडायरेक्ट करता है। मुझे को controller.php पर रीडायरेक्ट करने से बचने की आवश्यकता है। अन्य सभी यूआरएल को controller.php पर रीडायरेक्ट करना चाहिए।

+1

देखें: http://stackoverflow.com/questions/7210931/htaccess-redirect-all-but-one-page-from-html-to-php – Janaki

+0

@Dubious: thanx –

+0

आप का स्वागत है। – Janaki

उत्तर

5

आप एक अपवाद बनाने के लिए निम्न सिंटैक्स का उपयोग कर सकते हैं। [L] यह सुनिश्चित करता है कि यदि यह नियम ट्रिगर किया गया है, तो यह आखिरी है जिसे संसाधित किया जाएगा। कहने के लिए निम्नलिखित है

RewriteEngine on 
RewriteRule name_of_page_to_exclude.php - [L] 
RewriteRule (.*) controller.php [L] 

documentation: इसलिए स्वाभाविक रूप से, आप अपने प्रश्न में नियम से पहले, अपने .htaccess फ़ाइल के शीर्ष के निकट यह जगह की आवश्यकता होगी

- (पानी का छींटा) एक डैश इंगित करता है कि कोई प्रतिस्थापन नहीं किया जाना चाहिए (मौजूदा पथ अनछुए के माध्यम से पारित किया जाता है)।

+0

याह शानदार डॉ। यह काम कर रहा है। thanx बहुत। –

0

निम्नलिखित शर्त जोड़ें:

RewriteCond %{REQUEST_FILENAME} !-f 

यह किसी भी फाइल है कि वास्तव में मौजूद हैं और मान लिया गया है की अनुमति देते हैं जाएगा यह अन्य फ़ाइलें जो पहले से ही मौजूद लिए और नहीं कुछ भी गंदगी होगा।

RewriteRule name_of_page_to_exclude.php - [L] 

डैश (-) महत्वपूर्ण है:

+0

Thanx डॉ। upvoting और समर्थन रखने के लिए। लेकिन यह काम नहीं है। –

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