PHP OpenSSL एक्सटेंशन में एक पैकेज है?


22

मुझे पता है कि ओपनएसएसएल विस्तार PHP स्रोत में है, लेकिन जब मैं प्रदर्शन करता हूं तो मैं इसे सक्षम नहीं कर सकता apt-get install php5। एक भी नहीं है apt-get install php5-openssl। मुझे कैसे आगे बढ़ना चाहिए?


2
मुझे पता है कि यह पोस्ट पुरानी है, बस कुछ सामान्य जानकारी है। डिफ़ॉल्ट रूप से, PHP के पैकेज के साथ वितरित किए जाते हैं --with-openssl=[defaultpath]। इसका मतलब है कि आपको केवल Opensl (या किसी अन्य संस्करण) को स्थापित करना होगा (उदाहरण के लिए, sudo apt-get install openssl यह भी देखें कि हार्टलेस , उदाहरण के लिए इंस्टॉल करने के लिए ओपनस्ले का कौन सा संस्करण है sudo apt-cache policy opensslडब्ल्यूपीएस को चेक करने के लिए ओपनसेल के साथ ही टाइप करें php -m | grep opensslऔरphp -i | grep OpenSSL
dbb

जवाबों:


29

मुझे लगता है कि SSL समर्थन किसी एक्सटेंशन पर निर्भर नहीं करता है, यह पहले से ही Ubuntu के PHP में बनाया गया है। इस सामग्री के साथ अपने वेब सर्वर में एक PHP फ़ाइल बनाने का प्रयास करें:

<?php phpinfo() ?>

फिर इसे एक ब्राउज़र ( http://<server>/<file>.php) में एक्सेस करें । तुम्हे देखना चाहिए:

यहां छवि विवरण दर्ज करें

तथा

यहां छवि विवरण दर्ज करें

मेरे पास केवल ये PHP पैकेज स्थापित हैं: libapache2-mod-php5, php5-cli, php5-common, php5-gd, php5-mcrypt, php5-mysql।


एक व्यक्तिगत निर्माण मेरे सिस्टम में भूल गया था ... धन्यवाद!
टैसो इवेंजलिस्ता

15
या एक टर्मिनल में फ़ंक्शन को कॉल करेंphp -i | grep -i openssl
Overclover

वर्तमान में आपके पीएचपी बाइनरी में सक्षम सभी मॉड्यूल को सूचीबद्ध करने के लिए त्वरित ऑनलाइनर:php -i | grep enabled
जूलियोएचएम

11

कोशिश करें :

php -i | grep -i openssl

यदि आपके पास ओपनएसएसएल एक्सटेंशन स्थापित है, तो आपको कुछ इस तरह से देखना चाहिए:

openssl
OpenSSL support => enabled
OpenSSL Library Version => OpenSSL 1.0.1f 6 Jan 2014
OpenSSL Header Version => OpenSSL 1.0.1f 6 Jan 2014
openssl.cafile => no value => no value
openssl.capath => no value => no value
OpenSSL support => enabled

ऐसा लगता है कि OpenSSL एक्सटेंशन डिफ़ॉल्ट रूप से स्थापित है।

अपडेट :

यदि आपके पास यह एक्सटेंशन नहीं है, तो आप php.ini फ़ाइल को संपादित कर सकते हैं ।

से php.ini :

;;;;;;;;;;;;;;;;;;;;;;
; Dynamic Extensions ;
;;;;;;;;;;;;;;;;;;;;;;

; If you wish to have an extension loaded automatically, use the following
; syntax:
;
;   extension=modulename.extension
;
; For example, on Windows:
;
;   extension=msql.dll
;
; ... or under UNIX:
;
;   extension=msql.so
;
; ... or with a path:
;
;   extension=/path/to/extension/msql.so
;
; If you only provide the name of the extension, PHP will look for it in its
; default extension directory.
;

यदि नहीं तो उत्तर क्या है?
ब्रायन मेलोर

@BraianMellor php.ini में बदलाव ;extension=php_openssl.dllकरने की कोशिश करें extension=php_openssl.dllया फिर simplemachines.org/community/index.php?topic=310264.0 पर उत्तर देखें ।
simhumileco

.dll लिनक्स पर? क्या आपको यकीन है?
ब्रायन मेलर

1
मेरा समाधान apt-get द्वारा खुलता स्थापित कर रहा था। श्रेष्ठ!
ब्रायन मेलर

1
@BraianMellor ने उत्तर लिखा :)
simhumileco

1

मैं OpenSSL 1.1.0fका उपयोग कर स्थापित किया

# apt-get install openssl

# php -i | grep -i openssl
openssl
OpenSSL support => enabled
OpenSSL Library Version => OpenSSL 1.1.0f  25 May 2017
OpenSSL Header Version => OpenSSL 1.1.0f  25 May 2017
Openssl default config => /usr/lib/ssl/openssl.cnf
openssl.cafile => no value => no value
openssl.capath => no value => no value
Native OpenSSL support => enabled

आशा है कि यह किसी की मदद करेगा!

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.