Saya tahu bahwa ekstensi OpenSSL adalah dalam sumber PHP, tetapi saya tidak dapat mengaktifkannya saat melakukan apt-get install php5. Bahkan tidak ada apt-get install php5-openssl. Bagaimana saya harus melanjutkan?
Saya tahu posting ini sudah tua, hanya beberapa info umum. Secara default, paket PHP didistribusikan bersama --with-openssl=[defaultpath]. Ini berarti Anda hanya perlu menginstal openssl (atau varian lain) misalnya sudo apt-get install openssl (juga memeriksa versi openssl yang akan diinstal karena patah hati , mis sudo apt-cache policy openssl. Untuk memeriksa apakah PHP diaktifkan dengan jenis openssl saja php -m | grep openssldan php -i | grep OpenSSL.
dbf
Jawaban:
29
Saya pikir dukungan SSL tidak tergantung pada ekstensi, itu sudah dibangun ke dalam PHP Ubuntu. Coba buat file PHP di server web Anda dengan konten ini:
<?php phpinfo() ?>
lalu akses di browser ( http://<server>/<file>.php). Anda harus melihat:
Bangunan pribadi dilupakan dalam sistem saya ... Terima kasih!
Tasso Evangelista
15
Atau hubungi fungsi di terminalphp -i | grep -i openssl
Overclover
Oneliner cepat untuk mendaftar semua modul yang saat ini diaktifkan di biner PHP Anda:php -i | grep enabled
JulioHM
11
Coba :
php -i | grep -i openssl
Jika Anda menginstal ekstensi OpenSSL, Anda akan melihat sesuatu seperti ini:
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
Tampaknya ekstensi OpenSSL diinstal secara default.
Perbarui :
Jika Anda tidak memiliki ekstensi ini, Anda dapat mengedit file php.ini .
Dari 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.
;
Solusi saya adalah menginstal openssl dengan apt-get. Terbaik!
Braian Mellor
1
@BraianMellor tulis jawabannya :)
simhumileco
1
Saya menginstal OpenSSL 1.1.0fmenggunakan
# 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
--with-openssl=[defaultpath]
. Ini berarti Anda hanya perlu menginstal openssl (atau varian lain) misalnyasudo apt-get install openssl
(juga memeriksa versi openssl yang akan diinstal karena patah hati , missudo apt-cache policy openssl
. Untuk memeriksa apakah PHP diaktifkan dengan jenis openssl sajaphp -m | grep openssl
danphp -i | grep OpenSSL
.Jawaban:
Saya pikir dukungan SSL tidak tergantung pada ekstensi, itu sudah dibangun ke dalam PHP Ubuntu. Coba buat file PHP di server web Anda dengan konten ini:
lalu akses di browser (
http://<server>/<file>.php
). Anda harus melihat:dan
Saya hanya menginstal paket-paket PHP ini: libapache2-mod-php5, php5-cli, php5-common, php5-gd, php5-mcrypt, php5-mysql.
sumber
php -i | grep -i openssl
php -i | grep enabled
Coba :
Jika Anda menginstal ekstensi OpenSSL, Anda akan melihat sesuatu seperti ini:
Tampaknya ekstensi OpenSSL diinstal secara default.
Perbarui :
Jika Anda tidak memiliki ekstensi ini, Anda dapat mengedit file php.ini .
Dari php.ini :
sumber
;extension=php_openssl.dll
keextension=php_openssl.dll
atau mungkin mencari jawaban di simplemachines.org/community/index.php?topic=310264.0 Good luck!Saya menginstal
OpenSSL 1.1.0f
menggunakanSemoga ini bisa membantu seseorang!
sumber