"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > PHP नेटिव फ़ंक्शंस को कैसे सक्षम/अक्षम करें - php.ini ट्यूटोरियल

PHP नेटिव फ़ंक्शंस को कैसे सक्षम/अक्षम करें - php.ini ट्यूटोरियल

2024-11-02 को प्रकाशित
ब्राउज़ करें:548

इस लेख में मैं आपको php.ini फ़ाइल में "disable_functions" निर्देश को संपादित करते हुए php मूल फ़ंक्शन को सक्षम या अक्षम करने के लिए चरण दर चरण प्रक्रिया बताना चाहता हूं।

कभी-कभी आपके सिस्टम की उत्पादन वातावरण के साथ अनुकूलता को समायोजित करने के लिए आपके सर्वर पर डिफ़ॉल्ट PHP कॉन्फ़िगरेशन को अनुकूलित करने की आवश्यकता होती है।

यह ट्यूटोरियल क्यों

मैं लारवेल और सिम्फनी के लिए रियल-टाइम मॉनिटरिंग पैकेज इंस्पेक्टर.डेव का लेखक हूं। यह पैकेज आपके सर्वर से इंस्पेक्टर एपीआई में एसिंक्रोनस रूप से डेटा ट्रांसफर करने के लिए pro_open और proc_close php मूल फ़ंक्शन का उपयोग करता है।

इसे डिफ़ॉल्ट रूप से सक्षम PHP के मूल कर्ल फ़ंक्शंस का उपयोग करने के लिए भी कॉन्फ़िगर किया जा सकता है, लेकिन इस मामले में यह मॉनिटरिंग डेटा को सिंक्रोनस तरीके से इंस्पेक्टर को भेज देगा जैसे अन्य पैकेज जैसे सेंट्री, बगस्नाग इत्यादि। इसका मतलब है कि आपका एप्लिकेशन थोड़ा धीमा हो सकता है क्योंकि PHP इंजन को क्लाइंट के साथ कनेक्शन समाप्त करने से पहले इंतजार करना होगा।

हाल ही में कुछ डेवलपर्स ने मुझसे संपर्क किया क्योंकि उनके PHP कॉन्फ़िगरेशन में proc_open और proc_close फ़ंक्शन अक्षम थे, इसलिए उन्हें एसिंक्रोनस डेटा भेजने का लाभ उठाने के लिए उन्हें अनलॉक करने की आवश्यकता है।

यह काफी दुर्लभ है लेकिन मैंने इस ट्यूटोरियल को इस उपयोग के मामले के लिए एक समर्थन संसाधन के रूप में लिखने का फैसला किया है।

Php.ini फ़ाइल क्या है?

Php.ini फ़ाइल PHP के लिए कॉन्फ़िगरेशन फ़ाइल है। फ़ाइल में कुंजी/मान जोड़े की एक सूची है जिसे "निर्देश" कहा जाता है। निर्देशों को अनुभागों में समूहीकृत किया गया है, हालांकि ये मुख्य रूप से संगठनात्मक उद्देश्यों के लिए हैं।

जब PHP शुरू होती है, तो यह इस फ़ाइल को पढ़ती है और कॉन्फ़िगरेशन को संग्रहीत करने के लिए आंतरिक डेटा संरचनाएं सेट करती है। निष्पादन के दौरान, PHP इन आंतरिक डेटा संरचनाओं को यह निर्धारित करने के लिए संदर्भित करता है कि इसे कई प्रमुख क्षेत्रों में कैसे व्यवहार करना चाहिए, जैसे: त्रुटि प्रबंधन और लॉगिंग, संसाधन सीमा (मेमोरी, निष्पादन समय), फ़ाइल अपलोड, डेटाबेस कनेक्शन, और बहुत कुछ।

किसी ऐसे व्यक्ति के लिए जो सोच रहा है: PHP तब भी काम कर सकता है जब कोई php.ini फ़ाइल न हो, यह बस सभी निर्देशों पर डिफ़ॉल्ट मान लागू करेगा।

जो लोग इससे परिचित नहीं हैं, उनके लिए यहां php.ini फ़ाइल का एक उदाहरण दिया गया है:

https://github.com/php/php-src/blob/master/php.ini-production

Php.ini में फ़ंक्शन सक्षम/अक्षम करें

Php.ini फ़ाइल को संपादित करके हम मूल PHP फ़ंक्शंस को अक्षम कर सकते हैं जिन्हें आप अपने PHP कोड के अंदर कॉल नहीं कर पाएंगे।

कभी-कभी इस सुविधा का उपयोग साझा होस्टिंग वातावरण में कुछ कार्यों के उपयोग को प्रतिबंधित करने के लिए किया जाता है क्योंकि उनके गलत उपयोग से अन्य उपयोगकर्ताओं के लिए सुरक्षा समस्याएं पैदा हो सकती हैं। exec() जैसे फ़ंक्शंस आमतौर पर अक्षम होते हैं, लेकिन कभी-कभी सर्वर प्रदाता बहुत रूढ़िवादी होते हैं और रोजमर्रा के प्रोग्रामिंग कार्यों में आवश्यक फ़ंक्शंस को अक्षम कर सकते हैं।

Php.ini फ़ाइल का पता लगाएँ

फ़ाइल का वर्तमान स्थान प्राप्त करने के लिए अपनी मशीन के टर्मिनल में नीचे दिए गए कमांड को चलाएँ (यह विन और यूनिक्स दोनों के लिए काम करता है):

php --ini

सामान्य स्थान: /etc/php.ini, /etc/php/8.x/php.ini (x को अपने इंस्टॉलेशन के संस्करण संख्या से बदलें)

सर्वर पर फ़ाइलों को संपादित करने के लिए मैं विम संपादक का उपयोग करना पसंद करता हूं जो किसी भी यूनिक्स मशीन में उपलब्ध होना चाहिए।

// Use the file path from the command above
sudo vim /etc/php.ini

नीचे स्क्रॉल करके "disable_functions" निर्देश तक जाएं। यह फ़ाइल के पहले भाग में होना चाहिए और इसमें अल्पविराम द्वारा अलग किए गए कार्यों की एक सूची होनी चाहिए।

disable_functions=exec,shell_exec,system,proc_open,popen,curl_exec,curl_multi_exec,parse_ini_file,show_source

Php.ini फ़ाइल संपादित करें

  • विम में INSERT मोड में प्रवेश करने के लिए अपने कीबोर्ड पर "i" अक्षर दबाएं।
  • सूची से proc_open, और proc_close फ़ंक्शन हटाएं।
  • फ़ाइल का संपादन समाप्त होने पर, ESC कुंजी दबाएँ। यह आपको INSERT मोड से बाहर ले जाता है और "- INSERT -" आपके टर्मिनल के नीचे बाईं ओर से गायब हो जाता है।
  • फ़ाइल को सहेजने के लिए, ":wq" टाइप करें, जो लिखने और छोड़ने का निर्देश है।

PHP इंजन को पुनरारंभ करें

नए कॉन्फ़िगरेशन को लोड करने के लिए आपको PHP को पुनरारंभ करना होगा। नीचे दिया गया निर्देश अधिकांश सर्वरों पर काम करना चाहिए। आप अंततः Google पर एक विशिष्ट OS खोज सकते हैं।

// Change the version of the PHP with what is in use in your machine
sudo systemctl restart php8.2-fpm.service

अधिक तकनीकी लेखों के लिए आप मुझे लिंक्डइन या एक्स पर फ़ॉलो कर सकते हैं।

अपने PHP एप्लिकेशन की निःशुल्क निगरानी करें

इंस्पेक्टर एक कोड निष्पादन निगरानी उपकरण है जो विशेष रूप से सॉफ्टवेयर डेवलपर्स के लिए डिज़ाइन किया गया है। आपको सर्वर स्तर पर कुछ भी इंस्टॉल करने की आवश्यकता नहीं है, बस Laravel या Symfony पैकेज इंस्टॉल करें और आप जाने के लिए तैयार हैं।

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

या वेबसाइट पर अधिक जानें: https://inspector.dev

How to enable/disable PHP native functions – php.ini Tutorial

विज्ञप्ति वक्तव्य यह आलेख यहां पुन: प्रस्तुत किया गया है: https://dev.to/inspector/how-to-enabledisable-php-native-functions-phpini-tutorial-kpg?1 यदि कोई उल्लंघन है, तो कृपया हटाने के लिए स्टडी_गोलंग@163.com पर संपर्क करें। यह
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3