मैं संबंधित पथ के साथ .htaccess
में RewriteRules उपयोग करने के लिए कोशिश कर रहा हूँ, लेकिन अपाचे उत्पादन के लिए सर्वर पथ के बजाय शारीरिक पथ चाहते हैं कि जब भी मैं उत्पादन के लिए एक रिश्तेदार पथ की कोशिश लगती है। पूर्ण और सर्वर-रूट पथ ठीक काम करते हैं। उदाहरण के लिए:अपाचे का रिवाइटरूल स्थानीय पथ क्यों खुलासा करता है?
RewriteEngine On
# this works fine, 127.0.0.1/ab redirects to 127.0.0.1/cd
RewriteRule ^ab$ /cd [R]
# this doesn't work... 127.0.0.1/wx redirects to 127.0.0.1/C:/path/to/files/yz
RewriteRule ^wx$ yz [R]
जोड़ना एक "RewriteBase /
" समस्या का हल है, लेकिन यह हर .htaccess
के लिए पथ को जोड़ने के लिए कठिन है, और यह यह कठिन निर्देशिका संरचना को बदलने के लिए बनाता है। क्या वर्तमान कारण यूआरआई पथ के बजाय वर्तमान भौतिक पथ पर रीवाइटबेस डिफ़ॉल्ट है?
मुझे नए पथ पर वास्तविक रीडायरेक्ट चाहिए - मैं शॉर्टकट यूआरएल और सही टाइपो बनाने के लिए इसका उपयोग कर रहा हूं। क्या प्रत्येक .htaccess फ़ाइल में मैन्युअल रूप से रीवाइटबेस सेट करने से बचने का कोई तरीका है? – zildjohn01
सामान्य रूप से आपको 'रिवाइटबेस' को बदलने की आवश्यकता नहीं है। बाहरी रीडायरेक्ट के लिए आंतरिक और पूर्ण पथ के लिए बस सापेक्ष पथ का उपयोग करें। – Gumbo
क्या आप कृपया बता सकते हैं कि आपका क्या मतलब है? मेरे कोड में मैंने एक आंतरिक रीडायरेक्ट के लिए एक सापेक्ष पथ का उपयोग किया था, और यह वर्णित अवांछनीय व्यवहार के साथ समाप्त हुआ। – zildjohn01