php - Mod_ReWrite / ReWriteMap a URL using a database lookup script -


परिदृश्य
मैंने एक मौजूदा मौजूदा एएसपी क्लासिक ईकॉमर्स वेबसाइट को पूरी तरह से PHP पर लिखा है ।

पिछले साइट के डेटाबेस डिजाइन में डेटाबेस की अन्य समस्याओं के लिए उत्पाद डेटा पंक्तियों को परेशानी से जोड़कर संबंधपरक आईडी समस्याओं का एक कारण था।

इस के आसपास पाने के लिए मैं भी डेटाबेस, उत्पाद को प्राथमिक प्राथमिक कुंजी दे रही है, जबकि अभी भी पुराने पीके के साथ तालिका में एक कॉलम रखता है।

समस्या
मेरे पास समस्या तब होती है जब साइट है पुनः आरंभ, मुझे सभी खोज इंजन लिंक की ज़रूरत है जो 'उत्पाद। एएसपी? उत्पाद आईडी = 2 9' को डेटाबेस देखने के लिए इस्तेमाल करते थे, उत्पादों को पुरानी पीके से मेल करते हैं, और नए पीके यानी 'उत्पाद। पीएचपी आईडी आईडी = 53' '।

मैं इसे Mod_ReWrite / ReRriteMap के साथ करने के लिए देख रहा हूं, हालांकि, मैं ऑनलाइन पा सकने वाले सभी दस्तावेज बताता है कि डेटाबेस स्क्रिप्ट पीके लुकअप से कैसे निपटें।

अपडेट
मैं ' ने इगनासियो वाजाक़ज़-अब्राम के सुझाव पर 'बाहरी पुनर्लेखन कार्यक्रम' पर आगे पढ़ा है, और यह सही और आदर्श समाधान लगता है
हालांकि, मेरे होस्ट से संपर्क करने के बाद, वे अपने सर्वर पर ReRriteMap को सक्षम नहीं करते हैं।

मैंने अपनी खुद की आपूर्ति की है, लेकिन इसका कोई मतलब नहीं ReRriteMap सक्षम किए बिना इसे प्राप्त कर रहा है।

अपनी क्वेरी:

< पूर्व> सेलेक्ट करें WHERE ProductID = से चुनें आईडी?

वहां से केवल आईडी और एक नई लाइन के मूल्य को गूंजते हैं, और स्टडआउट फ्लश करते हैं।

नियमों का फिर से लिखना:

  RewriteMap dbfixup prg: dbfixup.script पुनर्विन्यासक%% {QUERY_STRING} उत्पादआईडी = (\ d +) पुनर्लेखन उत्पाद Product.asp Products.php? आईडी = $ {dbfixup:% 1}  

Comments

Popular posts from this blog

asp.net - Change the driver in the connection string to a data source in VB.Net -

objective c - iPhone and it's wireless area -

unix - Listing all shared memory segments used by a process on AIX5.3+ -