दिलचस्प पोस्ट
धागा से लौटें मूल्य वीएस2012 के लिए क्रिस्टल रिपोर्ट – वीएस2013 – वीएस2015 – वीएस2017 संग्रह अंतरफलक बनाम सरणियों वसंत के साथ 2 या अधिक डेटाबेस का उपयोग कैसे करें? iPhone कीबोर्ड कवर UITextField आप PHP में पृष्ठ पर अंक लगाना कैसे लागू करते हैं? अपवाद फेंकने के लिए कब? CDI @ ManagedProperty नामांकित बीन रिटर्न नल स्थानीय मॉड्यूल को एनपीएम पैकेज निर्भरता के रूप में निर्दिष्ट कैसे करें Node.js: Gzip संपीड़न? क्या Firebase उपयोगकर्ता निर्माण और / या पासवर्ड रीसेट के लिए ईमेल पुष्टिकरण करने का कोई तरीका है? प्रत्येक अच्छे डाटाबेस / एसक्यूएल डेवलपर को उत्तर देने में सक्षम होना चाहिए चींटी मुझे असमर्थित प्रमुख क्यों दे रही है। मीनार संस्करण त्रुटि असिंक्रोनस को सी # में ईमेल भेज रहा है? … आपने अपने एंड्रॉयड मैनिफ़ेस्ट.एक्सएमएल में इस गतिविधि की घोषणा की है

रैपर "https" खोजने में असमर्थ – क्या आपने PHP को कॉन्फ़िगर करते समय इसे सक्षम करना भूल गए थे?

समस्या सवाल में है मैंने इसके बारे में समाधान के लिए पूरी तरह से जांच की है और मुझे पता है कि इसके विषय हैं और मैंने उनका पालन किया है और कुछ भी नहीं है। कहा जा रहा है कि मैं अभी तक मैंने जो किया है सब कुछ ठीक से सूचीबद्ध करेंगे। मैं अपने विंडोज एक्सपी कंप्यूटर पर नवीनतम ग्रहण संस्करण पर जेड डीबगिंग के साथ PHP 5.2.14 चला रहा हूं। मेरे पास 1 जीबी रैम है I मेरे पास XAMPP अपाचे, MySQL, और FileZilla के साथ चल रहा है।

XAMPP पर मैंने निम्नलिखित किया है (इन परिवर्तनों के दौरान अपाचे बंद था): XAMPP कंट्रोल पैनल से व्यवस्थापक पर क्लिक किया गया और https:// localhost/xampp/ चला गया वहां से मैंने स्वागत लाइन पर इस रेखा से कतारों को स्वीकार किया:

ओपनएसएसएल समर्थन के लिए कृपया https: // 127.0.0.1 या https: // localhost के साथ परीक्षण प्रमाणपत्र का उपयोग करें।

उस खंड पर मैंने phpinfo() जांच की 'पर्यावरण' के तहत, SERVER["HTTPS"] on 'अपाचे पर्यावरण' के तहत, HTTPS On 'PHP वेरिएबल्स, _SERVER["HTTPS"] अंतर्गत On 'Phar' के तहत, OpenSSL support disabled (ext / openssl को इंस्टॉल करें) मैं नहीं जानता कि कैसे Phar एक को सक्षम करने के लिए

अब सी: \ xampp में फाइलों के बारे में, मैं PHP फ़ोल्डर में गया था। दोनों उत्पादन और विकास php.ini फ़ाइलों (माफ़ी की तुलना में बेहतर सुरक्षित) के तहत, मेरे पास allow_url_fopen=On , allow_url_include=On , और मैंने अर्धविराम हटा दिया है, ताकि extension=php_openssl.dll को अब टिप्पणी नहीं की जा extension=php_openssl.dll । मैंने यह भी पुष्टि की है कि .dll PHP फ़ोल्डर के ext फ़ोल्डर में है। दोनों libeay32.dll और ssleay32.dll PHP और अपाचे फ़ोल्डर में हैं। अपाचे फ़ोल्डर में उत्पादक या विकास php.ini फ़ाइलों को शामिल नहीं किया गया है।

मैं http://www.slproweb.com/products/Win32OpenSSL.html पर गया और सुरक्षित उपाय के लिए Win32 OpenSSL v1.0.0d स्थापित किया है।

अब मेरे retrieve_website.php में कोड की लाइन इस तरह दिखती है:

 $urlquery = "https://www.googleapis.com/customsearch/v1?key=".$appid."&cx=".$google_searchid."&q=".$query."&alt=atom&num=".$results; $xmlresults = file_get_contents($urlquery); 

मेरे पास दो अन्य वेबसाइटें हैं जिन्हें मैं पूछता हूं लेकिन वे HTTP के माध्यम से सेवा की जाती हैं और वे ठीक काम करते हैं मेरे पास स्क्रिप्ट के अंत के पास दर्ज की गई यह पंक्ति भी है:

 echo 'openssl: ', extension_loaded ('openssl') ? 'yes':'no', "\n"; echo 'http wrapper: ', in_array('http', $w) ? 'yes':'no', "\n"; echo 'https wrapper: ', in_array('https', $w) ? 'yes':'no', "\n"; echo 'wrappers: ', var_dump($w); 

जब मैं इसे ग्रहण पर एक PHP स्क्रिप्ट के रूप में चलाता हूँ, तो सब कुछ मेरे द्वारा इन परिणामों के साथ जिस तरह से करना चाहता है, पूरी तरह से ठीक से काम करता है:

 openssl: yes http wrapper: yes https wrapper: yes wrappers: array(10) { [0]=> string(5) "https" [1]=> string(4) "ftps" [2]=> string(3) "php" [3]=> string(4) "file" [4]=> string(4) "data" [5]=> string(4) "http" [6]=> string(3) "ftp" [7]=> string(13) "compress.zlib" [8]=> string(14) "compress.bzip2" [9]=> string(3) "zip" } 

मैंने इन सभी परिवर्तनों के बावजूद (अपाचे शुरू करने के बाद), मुझे पहली बार त्रुटि मिलती है, जब मैं पहली बार एलेप्से और फ़ायरफ़ॉक्स में एचपी : http://localhost/tutorial/retrieve_website.php के माध्यम से अपनी PHP स्क्रिप्ट का उपयोग करता हूं:

चेतावनी: file_get_contents () [function.file-get-content]: आवरण "https" खोजने में असमर्थ – क्या आपने PHP को कॉन्फ़िगर करते समय इसे सक्षम करना भूल रखा था? सी में: \ xampp \ htdocs \ tutorial \ retrieve_website.php पंक्ति 2 पर

चेतावनी: file_get_contents (https: // www.googleapis.com/customsearch/v1?key= हटाए गए API आईडी और cx = हटाए गए खोज आईडी और क्यू = शैतान + + + + + + जॉर्जिया और alt = atom और num = 5) [function.file -टेट-सामग्री]: स्ट्रीम खोलने में असफल: सी: \ xampp \ htdocs \ tutorial \ retrieve_website.php पंक्ति 2 पर ऐसी कोई फ़ाइल या निर्देशिका नहीं है

चेतावनी: DOMDocument :: loadXML () [domdocument.loadxml]: रिक्त स्ट्रिंग सी में इनपुट के रूप में आपूर्ति की गई: \ xampp \ htdocs \ tutorial \ retrieve_website.php पंक्ति 33 पर

openssl: no http आवरण: हाँ https आवरण: कोई रैपर: सरणी (10) {[0] => स्ट्रिंग (3) "php" [1] => स्ट्रिंग (4) "फ़ाइल" [2] => स्ट्रिंग (4 (3) "FTP" [3] => स्ट्रिंग (4) "डेटा" [4] => स्ट्रिंग (4) "http" [5] => स्ट्रिंग (3) "ftp" [6] => स्ट्रिंग (3) " ज़िप "[7] => स्ट्रिंग (13)" compress.zlib "[8] => स्ट्रिंग (14)" compress.bzip2 "[9] => स्ट्रिंग (4)" फ़ार "}

यह क्या है कि मैंने अनदेखा किया या विफल रहा? अपने स्वयं के ज्ञान के लिए, मैंने जो कुछ भी मैंने एचटीटीपीएस और ओपनएसएसएल से संबंधित के बारे में शोध किया है

Solutions Collecting From Web of "रैपर "https" खोजने में असमर्थ – क्या आपने PHP को कॉन्फ़िगर करते समय इसे सक्षम करना भूल गए थे?"

मैंने इसे ;extension=php_openssl.dll में /apache/bin/php.ini , /apache/bin/php.ini ;extension=php_openssl.dll को /apache/bin/php.ini phpinfo के बावजूद () कह रहा /php/php.ini लोड किया गया आईआईआई फाइल था।

संपादित करें: मुझे लगता है कि एजरा का जवाब सबसे अच्छा समाधान है सीधे विस्तारित लाइन को उपयुक्त आईआई फाइल में जोड़ रहा है

मुझे xampp/php/php.ini में स्थित php.ini फ़ाइल में extension=php_openssl.dll जोड़ना था। किसी तरह यह नहीं था, इसे जोड़ने और अपाचे को फिर से शुरू करने के बाद सब कुछ ठीक काम कर रहा था।

बस अपने php.ini फ़ाइल में दो पंक्तियाँ जोड़ें।

 extension=php_openssl.dll allow_url_include = On 

यह मेरे लिए काम कर रहा है

आपका अपाचे संभवतः SSL समर्थन से संकलित नहीं किया गया है वैसे भी file_get_contents के बजाय curl का उपयोग करें यह कोड आज़माएं, अगर यह विफल हो तो मैं सही हूँ

 function curl_get_contents($url) { $curl = curl_init($url); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0); $data = curl_exec($curl); curl_close($curl); return $data; } 

मैंने openssl extention को सक्षम किया है और यह मेरे लिए काम करता है 🙂

; विस्तार = php_openssl.dll

सेवा मेरे

विस्तार = php_openssl.dll

मेरे मामले में, यह मामला अपैच से सीएलआई के लिए एक अलग php.ini का उपयोग करते हुए WAMP के कारण था, इसलिए आपकी सेटिंग्स WAMP मेनू के माध्यम से सीएलआई पर लागू नहीं होती हैं। बस सीएलआई php.ini को संशोधित करें और यह काम करता है।

ओपनस्यूज 12.1 में केवल एक चीज की आवश्यकता थी:

 zypper in php5-openssl 

आप इसके बजाय इस फ़ंक्शन का उपयोग कर सकते हैं।

 function get_url_contents($url){ if (function_exists('file_get_contents')) { $result = @file_get_contents($url); } if ($result == '') { $ch = curl_init(); $timeout = 30; curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout); $result = curl_exec($ch); curl_close($ch); } return $result; } 

मेरे लिए मुझे php.ini में इन पंक्तियों को खारिज करना पड़ा:

 extension=php_openssl.dll extension_dir = "ext" 

"ext" लागू है अगर php_openssl.dll "ext" फ़ोल्डर में स्थित है।

नोट: मुझे अपनी दो php.ini फाइलों के लिए ऐसा करना था अन्यथा यह काम नहीं करेगा। एक vs.php स्थापना फ़ोल्डर में स्थित है, और दूसरे को PHP फ़ोल्डर पर

 C:\Program Files (x86)\Jcx.Software\VS.Php\2013\Php 5.6 C:\Program Files (x86)\PHP\v5.6 

स्रोत

पूरे दिन घूमने के बाद, मुझे इस गाइड का जवाब धन्यवाद मिला: http://piwigo.org/forum/viewtopic.php?id=15727

मुख्यतः ग्रहण -> विंडोज़ -> वरीयताएँ -> PHP एक्जीक्यूटेबल्स के तहत, यहां एक ऐसा खंड है जहां .exe और .ini का संदर्भ दिया गया है। डिफ़ॉल्ट वाले ईक्लीपस निर्देशिका में थे जब आप एप्पलस से पीएचपी डेवलपमेंट टूल्स एसडीके फीचर स्थापित करते हैं, तो मदद मेनू में नए सॉफ्टवेयर स्थापित करें।

इसलिए इसके बजाय, मैंने PHP 5.3.5 (सीजीआई) नामक एक नया निष्पादक जोड़ा और xpgp के php फ़ोल्डर से cgi.exe और .ini का संदर्भ दिया।

मेरी मदद करने के लिए अपना समय देने के लिए धन्यवाद।

इसे इस्तेमाल करे:

 function curl($url){ $curl = curl_init($url); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0); **$buffer = curl_exec($curl);** curl_close($curl); **return $buffer;** } 

मैक एएमपीपीएस पर, मैंने निम्नलिखित के साथ php-5.5.ini को अपडेट किया है और अब यह काम करता है।

 allow_url_include = On extension=openssl.so 

मुझे यह त्रुटि भी मिली है मुझे पता चला कि PHP के मेरे संस्करण में openssl संकलित नहीं हुआ है, इसलिए बस php.ini पर विस्तार निर्देश जोड़ना पर्याप्त नहीं था मैं नहीं जानता कि यह कैसे आप को अपने विशेष मामले में हल करना है, लेकिन मेरे लिए, मैं मैकपोर्ट्स का इस्तेमाल करता हूं, और यह कमांड बस था:

 sudo port install php5-openssl 

मैं opsenSUSE लीप का उपयोग कर रहा हूं, और मुझे एक ही समस्या थी – इसका मतलब है कि ओपनएसएसएल के लिए कोई समर्थन नहीं है। इस तरह मैंने इसे हल किया:

  1. ओएसएएसटी खोलें
  2. सॉफ्टवेयर प्रबंधन पर जाएं
  3. बाएं फलक पर खोज बॉक्स में, 'php5-openssl' दर्ज करें और वापसी कुंजी दबाएं।
  4. इसे चुनने के लिए दाएं फलक में 'php5-openssl' के बगल में स्थित चेकबॉक्स पर क्लिक करें और 'स्वीकार' पर क्लिक करें (यह ओपनएसएसएल समर्थन जोड़ता है)।
  5. अपाचे को पुनरारंभ करें: sudo service apache2 restart

यही है, आप कर चुके हैं