2010-08-05 9 views
44

मैं एक संपूर्ण वेबसाइट को पुनर्निर्देशित करना चाहता हूं, लेकिन रूट अपलोड में मौजूद 'अपलोड' नामक फ़ोल्डर में सबकुछ बहिष्कृत करना चाहता हूं। मैंने इसके लिए गुगल किया है, लेकिन कुछ भी नहीं आया है, या मैंने नहीं सोचा था कि मैंने जो देखा वह सही था।.htaccess के साथ साइट को रीडायरेक्ट करें लेकिन एक फ़ोल्डर को

क्या हम इसे क्रैक कर सकते हैं?

RewriteEngine on 
RewriteRule !^uploads($|/) http://example.com%{REQUEST_URI} [L,R=301] 

यह नियम किसी भी URL पथ करता है कि नहीं पथ का प्रारंभिक भाग को हटाने की वजह से या तो /uploads या /uploads/ (प्रमुख / के साथ शुरू पैटर्न में याद आ रही है से मेल खाता है जब इस्तेमाल किया:

उत्तर

55

इस mod_rewrite नियम का प्रयास करें .htaccess फ़ाइलों में) और अनुरोध को example.com पर संबंधित पथ पर रीडायरेक्ट करता है।

+0

एक आकर्षण की तरह काम करता है, धन्यवाद! – PaulAdamDavis

+0

क्या पृष्ठभूमि में ऐसा करने का कोई विकल्प है, इसलिए उपयोगकर्ता वास्तव में पुनर्निर्देशित नहीं होता है, लेकिन सभी अनुरोध किसी अन्य पते में प्रॉक्सी हो जाते हैं? – p1100i

+0

@burninggramma 'R = 301' के बजाय' P' आज़माएं। – Gumbo

19

मुझे लगता है कि आप इस हैं:

RewriteEngine on 
RewriteCond %{REQUEST_URI} !^/uploads/ 
RewriteRule (.*) http://www.newdomain.com/$1 [R=301,L] 

आप 500 Internal Error मिलता है तो दोहरी जांच आप } और के बीच एक जगह है! दूसरी लाइन पर

49

सरल उत्तर मैं बस खुद पर ठोकर खाई।

से पहले किसी अन्य कॉल जोड़ें निम्नलिखित

RewriteRule ^(uploads) - [L] 
+1

भगवान कोड की एक पंक्ति को आशीर्वाद दें: डी धन्यवाद –

+0

कोई समस्या नहीं @ M.Svrcek। – PseudoNinja

+1

यदि कोई उत्सुक है कि [एल] क्या करता है: http://httpd.apache.org/docs/2.4/rewrite/flags.html#flag_l –

6

एक आधुनिक-उर्फ आधारित समाधान

पुनर्निर्देशन सब एक विशिष्ट फ़ोल्डर

को छोड़कर अपने जड़ में निम्न पंक्ति जोड़ें शीर्ष पर /.htaccess:

RedirectMatch 301 ^/((?!uploads).*)$ http://newdomain.com/$1 

यह आपके पुराने डोमेन से न्यूडोमेन तक सभी पृष्ठों को छोड़ देगा (अपलोड/अपलोड/*)।

+1

यह पूरी तरह से काम करता है!बहुत उपयोगी, क्योंकि मैं mod_rewrite का उपयोग नहीं कर सका क्योंकि ग्राहक के सर्वर पर सक्षम नहीं था – lucaferrario

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