2011-03-15 17 views
7

मेरे पास ऐसी साइट है जिसे अब लाइव की आवश्यकता नहीं है और यह कहने के लिए एक होल्डिंग पेज सेटअप है कि यह अब उपलब्ध नहीं है। साइट पर पृष्ठों (बुकमार्क किए गए या अन्यथा) के सभी अनुरोधों को इस पृष्ठ पर भेजा जाना आवश्यक है जो रूट index.php पृष्ठ है, इसलिए मैं इसे तदनुसार रीडायरेक्ट करने के लिए कुछ htaccess का उपयोग कर रहा हूं।htaccess - डोमेन रूट पर सभी अनुरोधों को पुनर्निर्देशित करना

मैं वर्तमान में इस का उपयोग कर रहा:

RewriteCond %{REQUEST_URI} !^/index.php$ 
RewriteRule ^(.*)$ /index.php [R=302,NC,L] 

जो काम करता है, लेकिन यूआरएल को index.php कहते हैं - यानी। www.domain.com यह सिर्फ www.domain.com, लेकिन जाहिरा तौर पर मैं नहीं कर सकता है करने के लिए बहुत अच्छे हो जाएगा www.domain.com/index.php को

चला जाता है कि का उपयोग कर:

RewriteCond %{REQUEST_URI} !^/$ 
RewriteRule ^(.*)$/[R=302,NC,L] 

यह एक पृष्ठ देता है जो फ़ायरफ़ॉक्स में ठीक से त्रुटि को पुनर्निर्देशित नहीं करता है।

मुझे उपरोक्त उम्मीद है कि REQUEST_URL नहीं है या नहीं। www.domain.com और उसके बाद इसे/जैसे रीडायरेक्ट करें। www.domain.com/dave.php -> www.domain.com - इस प्रकार www.domain.com गुजरता है, लेकिन बाकी सब कुछ पुनर्निर्देशित किया जाता है ... वास्तव में यह क्या कर रहा है और मैं इसे करने के लिए कैसे प्राप्त करूं जो मैं चाहता हूं ?

उत्तर

13

बस इस तरह उपयोग:

RewriteRule ^.+$/[R=302,NC,L] 

यह सब है कि केवल / को / मेल नहीं खाते पर पहुंच जाएंगे।

+1

लेकिन यह सभी छवियों और अन्य सापेक्ष संसाधनों को लोड करने से रोकता है। इस मामले में – Ninj

+0

@ निनज; आपको 'रिवाइटकंड 'नियम का उपयोग करके संसाधनों को बाहर करने की आवश्यकता होगी। –

0

क्या आपकी समस्या हल हो गई है? यदि नहीं, तो आपने कोशिश की है:

RewriteCond %{REQUEST_FILENAME} -f 
RewriteCond %{REQUEST_FILENAME} -d 
RewriteRule . /index.php [L] 
संबंधित मुद्दे