Saya perlu menginstal pada server lampu persis ekstensi php yang sama yang diinstal pada server lama, bagaimana cara mengetahui persis ekstensi mana yang dipasang untuk menginstal yang sama di server baru?
Saya perlu menginstal pada server lampu persis ekstensi php yang sama yang diinstal pada server lama, bagaimana cara mengetahui persis ekstensi mana yang dipasang untuk menginstal yang sama di server baru?
Jawaban:
Anda dapat menggunakan saklar baris perintah -m
untuk php
melihat apa modul yang diinstal.
$ php -m | head
[PHP Modules]
bz2
calendar
ctype
curl
date
dbase
dom
exif
fileinfo
...
Anda juga dapat menggunakan php -i
untuk mendapatkan phpinfo();
output melalui baris perintah yang akan menyertakan info ini juga.
Jika ekstensi benar-benar digunakan, ekstensi itu perlu direferensikan di php.ini
suatu tempat. Ekstensi dimuat dengan cara yang sangat intuitif:
extension=msql.so
extension=/path/to/extension/msql.so
dll, dll.
Satu hal yang harus diperhatikan adalah ekstensi yang dimasukkan oleh ini
file tambahan yang disertakan. Saya tidak yakin tentang Debian, tetapi di RHEL ada /etc/php.d/
direktori tempat semua .ini
file diperlakukan seolah-olah mereka berada di utama/etc/php.ini
Jika tidak ada di salah satu dari dua tempat (utama php.ini
atau salah satu file yang disertakan) maka ekstensi kurang lebih hanya duduk di sistem file yang tidak digunakan.
EDIT:
Sebenarnya, saya pikir saya berbohong. Anda mungkin harus melihat file php Anda untuk panggilan ke dl () . Saya tidak tahu banyak orang yang memuat ekstensi seperti itu. Bahkan tidak yakin apa gunanya tapi itu daerah lain yang mungkin harus Anda periksa.
Dalam Debian, ekstensi PHP dimuat melalui file di /etc/php5/conf.d
Ada dua jenis paket PHP Debian yang mungkin diinstal di sini:
Untuk membuat daftar keduanya di sistem Anda, Anda dapat menggunakan perintah ini: dpkg -l | grep 'ii php5 \? -' yang mencantumkan paket yang diinstal dimulai dengan php- atau php5-.
Anda juga mungkin memiliki ekstensi yang dibuat dengan PECL dari kode sumber. Buat daftar dengan: pecl list
Akhirnya, Anda bisa mengkompilasi ekstensi Anda sendiri dengan cara lama. Dalam hal ini mereka mungkin tidak memiliki file di /etc/php5/conf.d tetapi mungkin ditambahkan ke php.ini itu sendiri.
Semua ekstensi biasanya memiliki bagian output dari phpinfo (); . php -m akan menampilkan daftar ekstensi apa yang telah dimuat PHP (masing-masing harus memiliki tempat di output phpinfo). Akan ada lebih banyak ekstensi terdaftar di output php -m daripada diinstal sebagai paket add-on di Debian, karena ada banyak ekstensi default yang dibangun ke dalam PHP serta yang dapat Anda instal setelahnya.
Berikut adalah contoh output dari mesin pengembangan yang mencantumkan ekstensi PHP tambahan yang diinstal:
root@zaphod:~# dpkg -l | grep 'ii php5\?-'
ii php-auth-sasl 1.0.4-1 all Abstraction of various SASL mechanism responses
ii php-db 1.7.14-2 all PHP PEAR Database Abstraction Layer
ii php-mail 1.2.0-4 all PHP PEAR module for sending email
ii php-mail-mime 1.8.4-1 all PHP PEAR module for creating MIME messages
ii php-mail-mimedecode 1.5.5-1 all PHP PEAR module to decode MIME messages
ii php-net-smtp 1.6.1-1 all PHP PEAR module implementing SMTP protocol
ii php-net-socket 1.0.9-2 all PHP PEAR Network Socket Interface module
ii php-pear 5.4.39-0+deb7u2 all PEAR - PHP Extension and Application Repository
ii php-xml-parser 1.3.4-6 all PHP PEAR module for parsing XML
ii php5-cgi 5.4.39-0+deb7u2 amd64 server-side, HTML-embedded scripting language (CGI binary)
ii php5-cli 5.4.39-0+deb7u2 amd64 command-line interpreter for the php5 scripting language
ii php5-common 5.4.39-0+deb7u2 amd64 Common files for packages built from the php5 source
ii php5-curl 5.4.39-0+deb7u2 amd64 CURL module for php5
ii php5-dev 5.4.39-0+deb7u2 amd64 Files for PHP5 module development
ii php5-gd 5.4.39-0+deb7u2 amd64 GD module for php5
ii php5-imagick 3.1.0~rc1-1+b2 amd64 ImageMagick module for php5
ii php5-imap 5.4.39-0+deb7u2 amd64 IMAP module for php5
ii php5-intl 5.4.39-0+deb7u2 amd64 internationalisation module for php5
ii php5-mcrypt 5.4.39-0+deb7u2 amd64 MCrypt module for php5
ii php5-mysql 5.4.39-0+deb7u2 amd64 MySQL module for php5
ii php5-pgsql 5.4.39-0+deb7u2 amd64 PostgreSQL module for php5
ii php5-sqlite 5.4.39-0+deb7u2 amd64 SQLite module for php5
ii php5-suhosin-extension 0.9.37-2 amd64 advanced protection system for PHP5
ii php5-sybase 5.4.39-0+deb7u2 amd64 Sybase / MS SQL Server module for php5
ii php5-xdebug 2.2.1-2 amd64 Xdebug Module for PHP 5
root@zaphod:~# pecl list
Installed packages, channel pecl.php.net:
=========================================
Package Version State
APC 3.1.13 beta
memcache 3.0.8 beta