डायनामिक वेब पेज

परिसेवक-पक्ष डायनामिक वेब पृष्ठ एक वेब पृष्ठ है जिसका निर्माण परिसेवक-पक्ष लिपिबद्धन को संसाधित करने वाले अनुप्रयोग परिसेवक द्वारा नियंत्रित किया जाता है। परिसेवक-पक्ष लिपिबद्धन में, मापदण्ड (कंप्यूटर प्रोग्रामिंग) निर्धारित करते हैं कि प्रत्येक नए वेब पृष्ठ का समुच्चय कैसे आगे बढ़ती है, और अधिक उपभोगता-पक्ष प्रसंस्करण की स्थापना भी शामिल है।

उपभोगता-पक्ष डायनामिक वेब पृष्ठ लोड होने पर ब्राउज़र में चल रहे जावास्क्रिप्ट का उपयोग करके वेब पृष्ठ को प्रक्रम करता है। जावास्क्रिप्ट पृष्ठ स्थिति को क्वेरी करने और इसे संशोधित करने के लिए दस्तावेज़ अभिलक्ष्य निदर्श या DOM के माध्यम से पृष्ठ के साथ सहभागिता कर सकता है। भले ही एक वेब पृष्ठ उपभोगता-पक्ष पर डायनामिक हो सकता है, फिर भी जब तक कोई परिसेवक-पक्ष कोड शामिल नहीं होता है, तब तक इसे GitHub पृष्ठ या Amazon S3 जैसी स्थिर वेब होस्टिंग सेवा पर होस्ट किया जा सकता है।

एक डायनामिक वेब पृष्ठ को तब उपयोगकर्ता द्वारा या कंप्यूटर प्रोग्राम द्वारा कुछ परिवर्तनशील विषय सूची को बदलने के लिए पुनः लोड किया जाता है। अद्यतन जानकारी परिसेवक से, या उस पृष्ठ के DOM में किए गए परिवर्तनों से आ सकती है। यह वेब ब्राउज़िंग इतिहास को छोटा कर सकता है या नहीं कर सकता है या वापस जाने के लिए एक सहेजा गया संस्करण बना सकता है, लेकिन अजाक्स (प्रोग्रामिंग) तकनीकों का उपयोग करने वाला डायनामिक वेब पृष्ठ अपडेट न तो वापस जाने के लिए कोई पृष्ठ बनाएगा, न ही वेब को काटेगा। ब्राउज़िंग इतिहास प्रदर्शित पृष्ठ के आगे। AJAX का उपयोग करते हुए, अंतिम उपयोगकर्ता (कंप्यूटिंग) वेब ब्राउज़र में एक पृष्ठ के रूप में प्रबंधित एक डायनामिक पृष्ठ प्राप्त करता है, जबकि उस पृष्ठ पर प्रदान की गई वास्तविक वेब विषय सूची भिन्न हो सकती है। AJAX इंजन केवल अपने उपभोगता के लिए अपने DOM,  the  DOM के कुछ हिस्सों का अनुरोध करने वाले ब्राउज़र पर एक अनुप्रयोज्य  परिसेवक  से बैठता है। एक विशेष अनुप्रयोज्य  परिसेवक  वेब अनुप्रयोज्य  को सेवाएं प्रदान करने के लिए एक मानकीकृत रिप्रेसेंटेशनल_स्टेट_ट्रांसफर शैली अंतराफलक प्रदान कर सकता है।

DHTML उन वेब पृष्ठों को बनाने के लिए उपयोग की जाने वाली तकनीकों और विधियों के लिए छत्र शब्द है जो स्थिर वेब पृष्ठ नहीं हैं, हालांकि यह AJAX के लोकप्रिय होने के बाद से आम उपयोग से बाहर हो गया है, एक ऐसा शब्द जो अब शायद ही कभी इस्तेमाल किया जाता है। उपभोगता-पक्ष-लिपिबद्धन, परिसेवक-पक्ष लिपिबद्धन, या इनका संयोजन ब्राउज़र में डायनामिक वेब अनुभव बनाता है।

बुनियादी अवधारणाएँ
शास्त्रीय हाइपरटेक्स्ट नौसंचालन, केवल HTML या XHTML के साथ, "स्थिर" विषय सूची प्रदान करता है, जिसका अर्थ है कि उपयोगकर्ता एक वेब पृष्ठ का अनुरोध करता है और केवल उस पृष्ठ और उस पृष्ठ की जानकारी को देखता है।

हालांकि, वेब पृष्ठ "जीवंत", "डायनामिक", या "पारस्परिक" उपयोगकर्ता अनुभव भी प्रदान कर सकता है। वेब पृष्ठ पर विषय सूची (टेक्स्ट, इमेज, फॉर्म फ़ील्ड इत्यादि) विभिन्न संदर्भों या स्थितियों के जवाब में बदल सकती है।

इस तरह का प्रभाव पैदा करने के दो तरीके हैं: उपभोगता-पक्ष लिपिबद्धन का उपयोग करने वाले वेब पृष्ठों को प्रस्तुति तकनीक का उपयोग करना चाहिए जिसे मोटे तौर पर रिच अंतरापृष्ठ अनुप्रयोज्य कहा जाता है। उपभोगता-पक्ष भाषा का अंकन जैसे जावास्क्रिप्ट या एक्शनस्क्रिप्ट, जिनका उपयोग क्रमशः डायनामिक HTML (DHTML) और फ्लैश तकनीकों के लिए किया जाता है, अक्सर प्रस्तुति के मीडिया प्रकारों (ध्वनि, जीवंतता, बदलते पाठ, आदि) को ऑर्केस्ट्रेट करने के लिए उपयोग किया जाता है। लिपिबद्धन दूरस्थ लिपिबद्धन के उपयोग की भी अनुमति देती है, एक ऐसी तकनीक जिसके द्वारा DHTML पृष्ठ (HTML तत्व) फ्रेम्स, XMLHttpRequests, या एक वेब सेवा का उपयोग करके परिसेवक से अतिरिक्त जानकारी का अनुरोध करता है।
 * माउस या कीबोर्ड क्रियाओं के जवाब में या निर्दिष्ट समय की घटनाओं पर एक विशिष्ट वेब पृष्ठ के भीतर अंतराफलक व्यवहार को बदलने के लिए उपभोगता-पक्ष लिपिबद्धन का उपयोग करना। इस मामले में प्रस्तुति के भीतर डायनामिक व्यवहार होता है।
 * पृष्ठों के बीच दिए गए पृष्ठ स्रोत को बदलने के लिए परिसेवक-पक्ष लिपिबद्धन का उपयोग करना, वेब पृष्ठों या ब्राउज़र को आपूर्ति की गई वेब विषय सूची के अनुक्रम या पुनः लोड को समायोजित करना। परिसेवक प्रतिक्रियाएँ ऐसी स्थितियों द्वारा निर्धारित की जा सकती हैं जैसे पोस्ट किए गए HTML फॉर्म में डेटा, यूनिफ़ॉर्म रिसोर्स लोकेटर में मापदण्ड, उपयोग किए जा रहे ब्राउज़र का प्रकार, समय बीतना, या आंकड़ाकोष या परिसेवक स्टेट (कंप्यूटर साइंस)।

परिसेवक पक्ष लिपिबद्धन का उपयोग करने वाले वेब पृष्ठ अक्सर परिसेवक-पक्ष भाषाओं जैसे PHP, पर्ल, जावा परिसेवक पृष्ठ]], ASP.NET, जावा सर्वर पृष्ठ, कोल्डफ्यूजन और अन्य भाषाओं की मदद से बनाए जाते हैं। ये परिसेवक-पक्ष भाषाएं आमतौर पर डायनामिक वेब पृष्ठ बनाने के लिए कॉमन गेटवे अंतराफलक (CGI) का उपयोग करती हैं। इस प्रकार के पृष्ठ उपभोगता-पक्ष पर फर्स्ट टाइप (DHTML, आदि) का भी उपयोग कर सकते हैं।

इतिहास
"डायनामिक वेब पृष्ठ शुरुआत" या कालक्रम के बारे में सटीक होना मुश्किल है क्योंकि सटीक अवधारणा "वेब पृष्ठों के व्यापक विकास" के बाद ही समझ में आती है। हाइपरटेक्स्ट परहस्त भाषाएँ 1989 से अस्तित्व में है, हाइपर टेक्स्ट मार्कअप भाषाएँ, 1996 से सार्वजनिक रूप से मानकीकृत है। वेब ब्राउज़र की लोकप्रियता में वृद्धि 1993 में मोज़ेक (वेब ​​​​ब्राउज़र) के साथ शुरू हुई। 1995 और 1996 के बीच कोल्डफ्यूजन, वेबऑब्जेक्ट्स, PHP और सक्रिय सर्वर पृष्ठों को बाजार में पेश किया गया।

जावास्क्रिप्ट (तब लाइवस्क्रिप्ट के रूप में जाना जाता है) की शुरूआत ने उपभोगता के ब्राउज़र में निष्पादित जावास्क्रिप्ट कोड के साथ उपभोगता-पक्ष डायनामिक वेब पृष्ठों के उत्पादन को सक्षम किया। AJAX शब्द के अक्षर "J" ने मूल रूप से जावास्क्रिप्ट, साथ ही XML के उपयोग का संकेत दिया। परिसेवक पक्ष जावास्क्रिप्ट प्रसंस्करण के उदय के साथ, उदाहरण के लिए, मूल रूप से 2009 में विकसित Node.js, जावास्क्रिप्ट का उपयोग परिसेवक पर डायनामिक रूप से पृष्ठ बनाने के लिए भी किया जाता है जो उपभोगता को पूरी तरह से भेजा जाता है।

मीडियाविकी, विषय सूची प्रबंधन प्रणाली जो विकिपीडिया को शक्ति प्रदान करती है, मूल रूप से परिसेवक-पक्ष डायनामिक वेब पृष्ठ के लिए एक उदाहरण है, जिसके साथ फॉर्म सबमिशन और URL मापदण्ड के माध्यम से परस्पर प्रभावित किया जाता है। पूरे समय के दौरान, दृश्य संपादक जैसे प्रडायनामिक वृद्धि विस्तारण ने ऐसे तत्व भी जोड़े हैं जो उपभोगता पक्ष पर डायनामिक हैं, जबकि मूल डायनामिक परिसेवक-पक्ष तत्व जैसे कि क्लासिक एडिट फॉर्म (सुशोभित गिरावट) त्रुटि या असंगति के मामले में वापस आने के लिए उपलब्ध रहते हैं।

परिसेवक-पक्ष लिपिबद्धन
वेब परिसेवक (परिसेवक-पक्ष लिपिबद्धन) पर चलने वाले योजना का उपयोग विभिन्न वेब पृष्ठों पर वेब विषय सूची उत्पन्न करने, उपयोगकर्ता सत्रों को प्रबंधित करने और कार्य प्रगति को नियंत्रित करने के लिए किया जाता है। परिसेवक प्रतिक्रियाएँ ऐसी स्थितियों द्वारा निर्धारित की जा सकती हैं जैसे नियुक्त किए गए HTML रूप में डेटा, यूनिफ़ॉर्म रिसोर्स लोकेटर (URL) में मापदण्ड, उपयोग किए जा रहे ब्राउज़र का प्रकार, समय बीतना, या आंकड़ाकोष या परिसेवक स्थिति (कंप्यूटर साइंस)।

ऐसे वेब पृष्ठ अक्सर परिसेवक-पक्ष भाषाओं जैसे एक्टिव परिसेवक पृष्ठ, कोल्डफ्यूजन, जाओ (प्रोग्रामिंग भाषा), जावास्क्रिप्ट, पर्ल, PHP, रूबी (प्रोग्रामिंग भाषा), पायथन (प्रोग्रामिंग भाषाएँ), WebDNA और अन्य भाषाओं की मदद से समर्थन परिसेवक द्वारा बनाए जाते हैं जो उसी हार्डवेयर पर चल सकते हैं। ये परिसेवक-पक्ष भाषाएँ डायनामिक वेब पृष्ठ बनाने के लिए अक्सर कॉमन गेटवे अंतराफलक (CGI) का उपयोग करती हैं। दो उल्लेखनीय अपवाद ASP.NET और JavaServer पृष्ठ हैं, जो अपने APIs में CGI अवधारणाओं का पुन: उपयोग करते हैं लेकिन वास्तव में सभी वेब अनुरोधों को साझा आभासी यंत्र में भेजते हैं।

वेब परिसेवक पर वेब पृष्ठ की स्रोत संचिका के भीतर लेबल या चिह्नक सन्निहित करने के लिए परिसेवक-पक्ष भाषाओं का उपयोग किया जाता है। जब उपभोगता कंप्यूटर पर कोई उपयोगकर्ता उस वेब पृष्ठ का अनुरोध करता है, तो वेब परिसेवक पर कार्रवाई करने के लिए इन लेबल या चिह्नक की व्याख्या करता है। उदाहरण के लिए, परिसेवक को आंकड़ाकोष से जानकारी डालने या वर्तमान दिनांक जैसी जानकारी डालने का निर्देश दिया जा सकता है।

डायनामिक वेब पृष्ठ अक्सर तब कैशे (कंप्यूटिंग) होते हैं जब बहुत कम या कोई बदलाव अपेक्षित नहीं होता है और पृष्ठ को काफी मात्रा में वेब परियात प्राप्त होने का अनुमान होता है जो परिसेवक पर व्यर्थ दबाव डालेगा और पृष्ठ लोडिंग को धीमा कर देगा अगर उसे फ्लाई पर पृष्ठ उत्पन्न करना पड़ा प्रत्येक अनुरोध के लिए।

उपभोगता-पक्ष लिपिबद्धन
उपभोगता-पक्ष लिपिबद्धन आगत यंत्र क्रियाओं के जवाब में, या निर्दिष्ट समय की घटनाओं पर विशिष्ट वेब पृष्ठ के भीतर अंतराफलक व्यवहार का बदलना है। इस मामले में, प्रस्तुति के भीतर डायनामिक व्यवहार होता है। उपभोगता-पक्ष विषय सूची उपयोगकर्ता के स्थानीय कंप्यूटर व्यवस्था पर उत्पन्न होती है।

ऐसे वेब पृष्ठ प्रस्तुति तकनीक का उपयोग करते हैं जिसे समृद्ध अंतराफलक वाले पृष्ठ कहा जाता है। उपभोगता-पक्ष लिपिबद्धन भाषाएँ जैसे जावास्क्रिप्ट या एक्शनस्क्रिप्ट, जिनका उपयोग क्रमशः डायनामिक HTML (DHTML) और Adobe Flash तकनीकों के लिए किया जाता है, अक्सर प्रस्तुति के संचार माध्यम के प्रकारों (ध्वनि, जीवंतता, बदलते पाठ, आदि) को ऑर्केस्ट्रेट करने के लिए उपयोग किया जाता है। उपभोगता-पक्ष लिपिबद्धन भी दूरस्थ लिपिबद्धन के उपयोग की अनुमति देती है, एक ऐसी तकनीक जिसके द्वारा DHTML पृष्ठ एक छिपे हुए (HTML तत्व) फ्रेम, XMLHttpRequests या वेब सेवा का उपयोग करके परिसेवक से अतिरिक्त जानकारी का अनुरोध करता है।

जावास्क्रिप्ट का पहला सार्वजनिक उपयोग 1995 में हुआ था, जब भाषा को नेटस्केप नेविगेटर 2 में लागू किया गया था, जिसे दो साल बाद ECMAScript के रूप में मानकीकृत किया गया था। उपभोगता-पक्ष विषय सूची उपभोगता के कंप्यूटर पर उत्पन्न होती है। वेब ब्राउज़र परिसेवक से एक पृष्ठ प्राप्त करता है, फिर पृष्ठ में सन्निहित किए गए कोड को संसाधित करता है (आमतौर पर जावास्क्रिप्ट में लिखा जाता है) और उपयोगकर्ता को पुनर्प्राप्त पृष्ठ की विषय सूची प्रदर्शित करता है।
 * उदाहरण

विशेशता (या लिखें कमांड) उपभोगता-पक्ष डायनामिक पृष्ठ जेनरेशन को चित्रित कर सकती है: दो अलग-अलग पृष्ठ, A और B, को पुनर्जीवित किया जा सकता है (एक "इवेंट रिस्पांस डायनामिक" द्वारा)  और  ; या लोड डायनामिक द्वारा   और.

संयोजन प्रौद्योगिकियां
सभी उपभोगता और परिसेवक घटक जो सामूहिक रूप से डायनामिक वेब पृष्ठ का निर्माण करते हैं,  वेब अनुप्रयोग  कहलाते हैं। वेब अनुप्रयोज्य उपयोगकर्ता पारस्परिक क्रिया, स्थिति, सुरक्षा और प्रदर्शन का प्रबंधन करते हैं।

अजाक्स (प्रोग्रामिंग) उपभोगता-पक्ष लिपिबद्धन और परिसेवक-पक्ष अनुरोध दोनों के संयोजन का उपयोग करता है। यह विषय सूची को डायनामिक रूप से बदलने के लिए वेब अनुप्रयोग विकास तकनीक है, और ऐसा करने के लिए यह डेटा के लिए परिसेवक को अनुरोध भेजता है। परिसेवक अनुरोधित डेटा लौटाता है जिसे उपभोगता-पक्ष लिपि द्वारा संसाधित किया जाता है। यह तकनीक परिसेवक लोड समय को कम कर सकती है क्योंकि उपभोगता परिसेवक के भाषा पार्सर द्वारा पूरे वेबपृष्ठ को पुन: उत्पन्न करने का अनुरोध नहीं करता है; केवल वह विषय सूची जो बदलेगी, प्रसारित की जाती है। गूगल मैप्स वेब अनुप्रयोज्य का एक उदाहरण है जो अजाक्स तकनीकों का उपयोग करता है।

एक वेब उपभोगता, जैसे कि वेब ब्राउज़र, अपने स्वयं के परिसेवक के रूप में कार्य कर सकता है, एक पृष्ठ बनाने के लिए गोफर, FTP, NNTP (Usenet) and HTTP विधि कई अलग-अलग परिसेवकों से डेटा अभिगम कर सकता है। हाइपरटेक्स्ट ट्रांसपोर्ट प्रोटोकॉल उपभोगता से परिसेवक पर वापस दस्तावेज़ अभिभारण करने का समर्थन करता है। ऐसा करने के लिए कई HTTP तरीके हैं।

यह भी देखें

 * स्टेटिक वेब पृष्ठ
 * डायनामिक एचटीएमएल
 * प्रतिक्रियात्मक वेब डिज़ाइन
 * डीप वेब (खोज अनुक्रमण)
 * वेब टेम्पलेट सिस्टम
 * डायनामिक वेब पृष्ठों की सेवा के लिए समाधान ढेर
 * लैंप (सॉफ्टवेयर बंडल)
 * लाइम (सॉफ्टवेयर बंडल)
 * LYCE (सॉफ्टवेयर बंडल)
 * विषय सूची प्रबंधन प्रणाली
 * वेब विषय सूची प्रबंधन प्रणाली
 * निजीकरण प्रबंधन प्रणाली

बाहरी संबंध

 * Static versus dynamic web site from W3.org
 * Dynamic web sites using the Relationship Management Method, from W3.org.
 * Wide analysis of dynamic web pages from University of Texas, Austin.