दिलचस्प पोस्ट
जावास्क्रिप्ट में एक नींद का काम है? बुनियादी एथ पॉपअप को आमंत्रित करने के लिए ब्राउजर को कैसे रोकें और 401 त्रुटि जेक्जरी का उपयोग कर? एक बड़ी सूची में प्रत्येक एनटी आइटम की सूची वापस करने के लिए पायथनिक तरीका जावा में स्ट्रिंग को "कैरेक्टर" सरणी में परिवर्तित करना जब एक जावा थ्रेड 'डाय' राज्य तक पहुंचता है जावास्क्रिप्ट फ़ंक्शन (क्लाइंट साइड) का निष्पादन रोकें या इसे ट्विक करें चेनिंग अजाक्स को ऐंजलर जे में बुलाया गया एंड्रॉइड में कस्टम फ़ॉन्ट को थीम में जोड़ना $ दायरे के साथ कार्य करना। $ Emit और $ scope। $ पर Android SQLite डेटाबेस में नया कॉलम कैसे जोड़ें? एनजी-ऑप्शन के साथ एनजी-ऑब्जेक्ट का चयन करना क्लिक पर संवाद बंद करें (कहीं भी) जीएमएम से IMAP का उपयोग करते हुए जावा अनुप्रयोग में मेल प्राप्त करना कुछ सीपीयू पर तंग छोरों में एडीसी / एसबीबी और आईएनसी / डीईसी के साथ समस्याएं कोड को आभासी गुणों को समझना

Mod_php क्या है?

एक ज़ेंड ट्यूटोरियल के माध्यम से जाकर, मैं निम्नलिखित कथन पर आया हूं:

नोट करें कि .htaccess में php_flag सेटिंग्स केवल अगर आप mod_php का उपयोग कर रहे हैं काम करते हैं

क्या कोई यह समझा सकता है कि इसका मतलब क्या है?

वेब के समाधान से एकत्रित समाधान "Mod_php क्या है?"

mod_php अर्थ है PHP, एक अपाचे मॉड्यूल के रूप में

मूल रूप से, जब mod_php को अपाचे मॉड्यूल के रूप में लोड किया जाता है, तो यह अपाचे को PHP फाइलों को व्याख्या करने की अनुमति देता है (इन्हें mod_php द्वारा व्याख्या की जाती है)

संपादित करें: अपाचे के साथ काम करते समय (कम से कम) PHP चलने के दो तरीके हैं:

  • सीजीआई का उपयोग करना: एक PHP प्रक्रिया अपाचे द्वारा शुरू की जाती है, और यह PHP प्रक्रिया है जो PHP कोड को परिभाषित करती है – अपाचे खुद ही नहीं
  • अपाचे मॉड्यूल (जिसे mod_php कहा जाता है) के रूप में PHP का उपयोग करना: PHP इंटरप्रिटर तब अपाचे प्रक्रिया के अंदर "एम्बेडेड" होता है: कोई बाह्य PHP प्रक्रिया नहीं है – इसका अर्थ है कि अपाचे और PHP बेहतर संवाद कर सकते हैं

और टिप्पणी के बाद, पुनः संपादित करें : सीजीआई या mod_php का प्रयोग आपके ऊपर है: यह केवल आपके वेबसर्वर के विन्यास का मामला है

यह जानने के लिए कि वर्तमान में आपके सर्वर पर किस प्रकार का उपयोग किया गया है, आप phpinfo() के आउटपुट को देख सकते हैं: संकेत मिलता है कि PHP PHP mod_php (या mod_php5 ) के माध्यम से, या सीजीआई के माध्यम से चल रहा है या नहीं

आप php_sapi_name() फ़ंक्शन पर भी नज़र php_sapi_name() : यह वेब सर्वर और PHP के बीच अंतरफलक का प्रकार देता है

यदि आप अपने अपाचे की कॉन्फ़िगरेशन फाइलों में mod_php , तो mod_php का प्रयोग करते समय, इस तरह दिखने वाला LoadModule लाइन होनी चाहिए:

 LoadModule php5_module modules/libphp5.so 

(फाइल नाम, दाईं ओर, अलग-अलग हो सकता है – विंडोज पर, उदाहरण के लिए, यह .dll होना चाहिए)

यह उत्तर टक्सराज से लिया गया है:

अपने वेब सर्वर के माध्यम से PHP चलाते समय, दो अलग-अलग विकल्प होते हैं: PHP का सीजीआई एसएपीआई का उपयोग कर इसे चलाने या वेब सर्वर के लिए एक मॉड्यूल के रूप में चलाना। प्रत्येक के पास अपने फायदे हैं, लेकिन कुल मिलाकर, मॉड्यूल को आमतौर पर पसंद किया जाता है।

सीजीआई के रूप में PHP चलाने का मतलब है कि आप मूल रूप से अपने वेब सर्वर को PHP निष्पादन योग्य फ़ाइल का स्थान बताते हैं, और सर्वर निष्पादन योग्य चलाता है, इसे आपको स्क्रिप्ट दे रहा है, हर बार जब आप किसी पेज पर जाते हैं इसका मतलब है कि हर बार जब आप किसी पृष्ठ को लोड करते हैं, तो PHP को php.ini पढ़ने और इसकी सेटिंग्स सेट करने की आवश्यकता होती है, इसके लिए इसके सभी एक्सटेंशन लोड करने की आवश्यकता होती है, और फिर स्क्रिप्ट को पार्स करने के काम शुरू करने की आवश्यकता होती है – कई दोहराए गए काम हैं

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

एक मॉड्यूल के रूप में PHP का उपयोग करने का स्पष्ट लाभ गति है – यदि आप सीजीआई से एक मॉड्यूल में परिवर्तित करते हैं तो आपको एक बड़ी गति को बढ़ावा मिलेगा। बहुत से लोग, खासकर विंडोज़ प्रयोक्ता, यह महसूस नहीं करते हैं, और php.exe सीजीआई एसएपीआई का इस्तेमाल करते हैं, जो शर्मिंदा है – मॉड्यूल आम तौर पर तीन से पांच गुना तेज होता है।

सीजीआई संस्करण का उपयोग करने के लिए एक प्रमुख लाभ है, हालांकि, और यह है कि जब भी आप एक पृष्ठ लोड करते हैं तो हर बार PHP आपकी सेटिंग पढ़ता है। पीएचपी एक मॉड्यूल के रूप में चल रहा है, आप php.ini फ़ाइल में जो भी परिवर्तन करते हैं वह तब तक नहीं चलता जब तक कि आप अपने वेब सर्वर को पुनरारंभ नहीं करते, जो सीजीआई संस्करण को बेहतर बनाता है यदि आप बहुत सी नई सेटिंग्स का परीक्षण कर रहे हैं और त्वरित प्रतिक्रिया देखना चाहते हैं।

आपके सर्वर को php मॉड्यूल स्थापित करने की आवश्यकता है ताकि वह PHP कोड पार्स कर सकें।

यदि आप उबुन्टू पर हैं तो आप इसे आसानी से कर सकते हैं

 sudo apt-get install apache2 sudo apt-get install php5 sudo apt-get install libapache2-mod-php5 sudo /etc/init.d/apache2 restart 

अन्यथा आप पीपी के साथ अपाचे संकलन कर सकते हैं: http://dan.drydog.com/apache2php.html

आपके सर्वर ओएस निर्दिष्ट करने से दूसरों को अधिक विशेष रूप से जवाब देने में मदद मिलेगी।

इसका मतलब है कि आपको एपीके में एक मॉड्यूल के रूप में PHP स्थापित करना होगा, इसे सीजीआई स्क्रिप्ट के रूप में शुरू करने के बजाय