मैं एक PHP परियोजना जहाँ मैं किसी URL का पथ के भीतर एक हैश चरित्र (#) को भेजने की जरूरत है में हैश पात्रों के साथ पथ परिवर्तित करने के लिए। (http://www.example.com/parameter#23/parameter#67/index.php) मैंने सोचा था कि urlencode उस को अनुमति देगा, हैश को% 23mod_rewrite का उपयोग कर क्वेरी स्ट्रिंग
लेकिन अब मैं देखता हूं कि urlencoded हैश ब्राउज़र को यूआरएल खंड (या क्वेरी) के रूप में दाईं ओर सब कुछ ठीक करने के लिए मजबूर करता है।
वहाँ के माध्यम से एक हैश पारित करने के लिए एक रास्ता है, या मैं एक चरित्र प्रतिस्थापन urlencode करने से पहले क्या करने की जरूरत है? जोड़ने के लिए
संपादित करें (19 सितं, 2017):
ऐसा लगता है कि मैं गलत सवाल पूछ रहा था। मेरा मुद्दा पथ के भीतर हैश चरित्र का उपयोग करने के साथ नहीं था (एन्कोडिंग यह काम करता है), लेकिन इसे mod_rewrite का उपयोग करने के लिए इसे एक क्वेरी स्ट्रिंग में परिवर्तित करने के लिए। मैं इसे रीवाइटरूले के भीतर फिर से एन्कोड करने में विफल रहा था। मैं मिलान करने के लिए शीर्षक संपादित करेंगे।
यहाँ पुनर्लेखन नियम मैं उपयोग कर रहा था है: के रूप में मैं बी टैग जोड़ा जैसे ही
RewriteEngine On
# convert path strings into query strings
RewriteRule "^(.*)/(.*)/hashtags.php" /hashtags.php?parameter_1=$1&parameter_2=$2 [QSA,L]
, इसे सही ढंग से काम किया:
RewriteEngine On
# convert path strings into query strings
RewriteRule "^(.*)/(.*)/hashtags.php" /hashtags.php?parameter_1=$1&parameter_2=$2 [QSA,L,B]
किस तरह से आपको लगता है कि URL का उपयोग करते हैं? – Gumbo
मेरा मानना है कि urlencode को% 23 में बदलना चाहिए, क्या आप एक उदाहरण कोड प्रदान कर सकते हैं? –
मैं गतिशील रूप से बनाए गए पीडीएफ के लिए स्थिर लिंक बना रहा हूं। मैं पथ तत्वों को $ _GET में पास करने के लिए मॉडर्राइट का उपयोग कर रहा हूं। वे पीडीएफ बनाने के लिए आवश्यक उत्पाद पैरामीटर हैं। कुछ उत्पादों में उत्पाद नामों में हैश टैग हैं। – Mark