सभी CGI प्रोग्राम्स की निम्नलिखित एनवायरनमेंट वेरिएबल्स तक पहुंच होती है। कोई भी CGI प्रोग्राम लिखते समय ये वेरिएबल्स महत्वपूर्ण भूमिका निभाते हैं।
| क्रमांक | वेरिएबल नाम और विवरण |
|---|---|
| 1 | CONTENT_TYPE सामग्री का डेटा प्रकार। उपयोग किया जाता है जब क्लाइंट सर्वर से जुड़ी सामग्री भेज रहा हो। उदाहरण के लिए, फ़ाइल अपलोड। |
| 2 | CONTENT_LENGTH क्वेरी जानकारी की लंबाई। यह केवल POST अनुरोधों के लिए उपलब्ध है। |
| 3 | HTTP_COOKIE कुंजी और मान जोड़े के रूप में सेट कुकीज़ लौटाता है। |
| 4 | HTTP_USER_AGENT User-Agent रिक्वेस्ट-हेडर फ़ील्ड में अनुरोध उत्पन्न करने वाले उपयोगकर्ता एजेंट के बारे में जानकारी होती है। यह वेब ब्राउज़र का नाम है। |
| 5 | PATH_INFO CGI स्क्रिप्ट का पथ। |
| 6 | QUERY_STRING GET विधि अनुरोध के साथ भेजी गई URL-एन्कोडेड जानकारी। |
| 7 | REMOTE_ADDR अनुरोध करने वाले रिमोट होस्ट का IP एड्रेस। यह लॉगिंग या प्रमाणीकरण के लिए उपयोगी है। |
| 8 | REMOTE_HOST अनुरोध करने वाले होस्ट का पूर्ण योग्य नाम। यदि यह जानकारी उपलब्ध नहीं है, तो REMOTE_ADDR का उपयोग IR एड्रेस प्राप्त करने के लिए किया जा सकता है। |
| 9 | REQUEST_METHOD अनुरोध करने के लिए उपयोग की जाने वाली विधि। सबसे आम विधियां GET और POST हैं। |
| 10 | SCRIPT_FILENAME CGI स्क्रिप्ट का पूर्ण पथ। |
| 11 | SCRIPT_NAME CGI स्क्रिप्ट का नाम। |
| 12 | SERVER_NAME सर्वर का होस्टनाम या IP एड्रेस |
| 13 | SERVER_SOFTWARE सर्वर द्वारा चलाए जा रहे सॉफ़्टवेयर का नाम और संस्करण। |
यहां एक छोटा CGI प्रोग्राम है जो सभी CGI वेरिएबल्स को सूचीबद्ध करता है।
#!/usr/bin/python import os print "Content-type: text/html\r\n\r\n";; print "Environment<\br>";; for param in os.environ.keys(): print "%20s: %s<\br>" % (param, os.environ[param])