Server Information – $_SERVER एक ऐसा Super Global Array है, जो Current PHP Page के Host Web Server के बारे में बहुत सारी महत्वपूर्ण जानकारियां देने में सक्षम हैं। इस Array के विभिन्न Keys को Use करके हम Web Server Related विभिन्न प्रकार की जानकारियां प्राप्त कर सकते हैं।
SERVER_SOFTWARE Key
ये Key Specify करने पर हमें Current Web Server Software से संबंधित जानकारी एक String के रूप में प्राप्त होती है।
SERVER_NAME Key
ये Key Specify करने पर हमें Current Web Server का Hostname, DNS Alias या IP Address एक String के रूप में प्राप्त होता है।
SERVER_INTERFACE Key
ये Key Specify करने पर हमें Current Web Server द्वारा Followed CGI Standard का Version Number एक String के रूप में प्राप्त होता है।
SERVER_PROTOCOL Key
ये Key Specify करने पर हमें Current Web Server द्वारा Used Request Protocol का Name व Version Number एक String के रूप में प्राप्त होता है।
SERVER_PORT Key
ये Key Specify करने पर हमें Current Web Server के जिस Port पर Request Send किया गया होता है, उस Port का Number एक String के रूप में प्राप्त होता है।
REQUEST_METHOD Key
ये Key Specify करने पर हमें Current Web Server का वह Method मिलता है, जिसे Web Client ने अपने Request URL में Specify किया है। सामान्यतः इस Key द्वारा हमें GET, HEAD, POST या PUT में से कोई एक मान मिलता है।
PATH_INFO Key
ये Key Specify करने पर हमें Web Client द्वारा Requested URL में Specified Resource का वह Extra Path मिलता है, जिसे Web Client ने अपने Request URL में Specify किया जाता है।
PATH_TRANSLATED Key
ये Key Specify करने पर हमें Web Client द्वारा Requested URL में Specified Resource का Actual Server Path मिलता है।
SCRIPT_NAME Key
ये Key Specify करने पर हमें Web Client द्वारा Requested URL में Specified Resource का Current Path मिलता है। ये Path किसी Script के Self Referencing के लिए उपयोगी होता है। ये Path “/~username/demo.php” जैसा होता है।
QUERY_STRING Key
ये Key Specify करने पर हमें Web Client द्वारा Requested URL में Specified Query String मिलता है।
REMOTE_HOST Key
ये Key Specify करने पर हमें उस Computer का Hostname मिलता है, जिसने Requested Resource की Request की है। यदि DNS Machine न हो, तो ये Field Blank रहता है और हमें REMOTE_ADDR ही मिलता है।
REMOTE_HOST Key
ये Key Specify करने पर हमें उस Computer का IP Address मिलता है, जिसने Requested Resource की Request की है।
AUTH_TYPE Key
यदि Requested Resource Password Protected हो, तो ये Key Specify करने पर हमें Password Protected Resource का Authentication method का पता चलता है।
REMOTE_USER Key
यदि Requested Resource Password Protected हो, तो ये Key Specify करने पर हमें Password Protected Resource को Access करने वाले Authenticated User के नाम का पता चलता है। हालांकि हम किसी भी तरीके से नहीं जान सकते कि Authenticated User का Password क्या था।
CONTENT_TYPE Key
ये Information सामान्यतः PUT या POST Request Message Query के साथ Attached रहता है। इस Key का Use करके हम ये पता लगा सकते हैं कि Query के साथ Attached Information के Content का Type क्या है।
CONTENT_LENGTH Key
इस Key का Use करके हम ये पता लगा सकते हैं कि Query के साथ Attached Information के Content की Size क्या है।
Apache Server हर Request की HTTP Header में $_SERVER Array में कुछ और Keys को Attach करता है। हर Key के लिए Header Name, एक Uppercase Letter Key में Convert हो जाता है, जबकि Hyphen एक Underscore में Convert हो जाता है।
उदाहरण के लिए User-Agent Header जब $_SERVER में एक Key के रूप में Attach होगा, तो ये HTTP_USER_AGENT नाम की Key के रूप में Attach होगा, जहां Header Name यानी User-Agent Uppercase Letters में Convent होता है और User व Agent के बीच का Hyphen एक Underscore में Convert हो जाता है।
परिणामस्वरूप User-Agent Header Information को PHP में Access करने के लिए हम $_SERVER[‘HTTP_USER_AGENT’] Statement का प्रयोग कर सकते हैं।
HTTP_USER_AGENT व HTTP_REFERER दो सबसे ज्यादा Use किए जाने वाले Header Name Keys हैं, जहां HTTP_USER_AGENT Request करने वाले Web Browser की Information देता है, जबकि HTTP_REFERER उस Page की Information देता है, जिससे होते हुए User Current Web Page पर पहुंचा है।
यदि हम उपरोक्त सभी Server Information को एक साथ देखना चाहें, तो हम निम्नानुसार एक PHP Code Use कर सकते हैं और $_SERVER Super Global Array द्वारा Provide सभी Server Information को एक साथ Web Page पर Display कर सकते हैं। यानी हमारा PHP Web Page निम्नानुसार हो सकता हैः
<?php $title = "Multivalued Form Processing"; include_once('header.php'); foreach($_SERVER as $key => $value){ echo "<b>" . $key . ": </b>" . $value . "<br/>"; } ?> <?php include_once('footer.php'); ?>

अलग-अलग Web Servers में अलग-अलग तरह की Configurations होती हैं, इसलिए हर Web Server पर उपरोक्त सभी Server Information Keys उपलब्ध हों, ऐसा जरूरी नहीं है। कुछ Web Servers पर इन Keys की संख्या कुछ ज्यादा भी हो सकती है तो कुछ पर कम। लेकिन ज्यादातर Web Servers पर ऊपर Discuss की गई ज्यादातर Keys Available रहती हैं।
ये Article इस वेबसाईट पर Selling हेतु उपलब्ध EBook PHP in Hindi से लिया गया है। इसलिए यदि ये Article आपके लिए उपयोगी रहा, तो निश्चित रूप से ये पुस्तक भी आपके लिए काफी उपयोगी साबित होगी।
PHP in Hindi | Page: 647 | Format: PDF