Back to Question Center
0

.htaccess निर्देशिका रीडायरेक्ट सेमील्ट

1 answers:

मैं एक डायरेक्टरी को दूसरी निर्देशिका में रीडायरेक्ट करना चाहता हूं लेकिन मैंने एक रोड़ा मारा है I. मैं / directory_name से / new_directory_name रीडायरेक्ट करना चाहता हूं, इसलिए मैं इसे अपने. htaccess:

     रीडायरेक्ट मैच 301 / डायरेक्टरी_नाम / (. *) / new_directory_name / $ 1    

Semaltेट ठीक काम किया है लेकिन मुझे दूसरी निर्देशिका भी कहा जाता है:

     / चित्र / निर्देशिका_नाम /    

और रीडायरेक्ट उस निर्देशिका में फ़ाइलों को लिंक / new_directory_name / के लिए लिंक भेज रहा है और जिसके परिणामस्वरूप टूटी हुई छवि लिंक.

इसलिए मुझे एक रीडायरेक्ट की आवश्यकता है कि केवल रीडायरेक्ट / डायरेक्टरी / नाम / और कोई भी अन्य निर्देशिका नहीं है जो समान नाम है (लेकिन एक अलग स्थान पर हैं) - heavy duty commercial bar stools.

February 12, 2018

मुझे विषय के बारे में अधिक जानकारी नहीं है, लेकिन मैंने अपने सर्वर पर निम्न कोड की कोशिश की और यह काम किया. इसकी जांच - पड़ताल करें.

  रीव्रेटइजइन ऑन करें
पुनर्लेखन% {HTTP_HOST} ^ ए \. कॉम $ [या]
RewriteCond% {HTTP_HOST} ^ www \. ए\. कॉम $
RewriteRule ^ directory_a \ / $ "http \: \ / \ / a \. com \ / new_directory_a "[आर = 301, एल] 

रीडायरेक्ट मैच 301 / डायरेक्टरी_नाम / (. *) / new_directory_name / $ 1

यूआरएल के आरंभ ( ^ ) के लिए आपको बस एंकर पैटर्न की आवश्यकता होती है, इसलिए यह / निर्देशिका_ नाम से शुरू होता है, बजाय यूआरएल में कहीं भी , जो यहाँ हो रहा है.

दूसरे शब्दों में, ^ के साथ पैटर्न का उपसर्ग:

  रीडायरेक्ट मैच 301 ^ / डायरेक्टरी_नाम / (. *) / new_directory_name / $ 1