Pemasangan pendarahan terkini Php 7 di Debian 8 Jessie Linux

Pemasangan pendarahan terkini Php 7 di Debian 8 Jessie Linux

Pengenalan

Repositori pakej stabil semasa Debian mungkin tidak selalu mengandungi perisian terkini untuk selaras
jangkaan kami. Terdapat alasan yang sangat baik untuk ini, seperti sistem yang stabil sebagai perdagangan untuk menjalankan perisian kelebihan pendarahan.

Bahasa skrip sisi pelayan PHP bukan pengecualian! Pada
Masa menulis versi PHP Debian semasa adalah 5.6.29 sedangkan pelepasan sumber PHP terkini adalah 7.1.0(memandangkan tidak ada php 6).

Tuntutan pemaju PHP semasa meletakkan Php 7 di hadapan Php 5.6 dari segi kelajuan, di mana Php 7 sepatutnya menjadi dua kali lebih cepat sebagai pendahulunya:

Terima kasih kepada enjin zend baru 3.0, aplikasi anda melihat sehingga 2x prestasi lebih cepat dan 50% penggunaan memori yang lebih baik daripada Php 5.6, membolehkan anda melayani lebih banyak pengguna serentak tanpa menambah
Perkakasan. Direka dan refactored untuk beban kerja hari ini, Php 7 adalah pilihan utama bagi pemaju web hari ini.

Rujukan: Zend.com/en/sumber/php-7

Objektif

Untuk membandingkan kelajuan antara Php 5.6 dan terkini php 7.1.0 bukan objektif artikel ini. Walau bagaimanapun, objektifnya ialah mendapatkan pelepasan PHP 7 terkini yang dipasang pada sistem Debian 8. Selain itu kita
akan memasang php-fpm (pengurus proses fastcgi). Panduan ini akan menawarkan dua kemungkinan pemasangan.

Pertama, panduan akan digunakan Compile-PHP-Debian skrip boleh didapati di github.com/linuxconfig/compile-php-debian Untuk mengautomasikan pemasangan Php 7 dan kemudian ia akan menunjukkan, bagaimana memasang Php 7 secara manual.

Keperluan

  • Akses istimewa ke sistem Debian Linux anda sebagai akar atau melalui sudo Perintah diperlukan

Kesukaran

Medium

Konvensyen

  • # - Memerlukan arahan Linux yang diberikan untuk dilaksanakan dengan keistimewaan akar sama ada secara langsung sebagai pengguna root atau dengan menggunakan sudo perintah
  • $ - Memerlukan arahan Linux yang diberikan sebagai pengguna yang tidak layak

Arahan

Keluarkan pakej Php5

Sekiranya anda sudah memasang Php5 pada sistem anda, anda perlu mengeluarkannya sebelum pemasangan PHP 7 baru. Untuk berbuat demikian untuk senarai semua php Pakej yang berkaitan dengan sistem anda:

# dpkg -l | grep -e "^ii.*php "| cut -d" "-f3 libapache2-mod-php5 php5 php5-cli php5-common php5-json php5-readline 

Perintah Linux berikut akan mengalih keluar semua pakej yang disenaraikan oleh output arahan di atas:

# Keluarkan = $ (dpkg -l | grep -e "^ii.*php "| cut -d" "-f3) # dpkg -p $ buang 

Pemasangan automatik skrip

Pemasangan automatik skrip berikut melakukan semua langkah yang diperlukan untuk menyusun dan memasang versi PHP 7 yang dipilih pengguna dan juga akan memasang daemon php-fpm. Mulakan dengan pengklonan Compile-PHP-Debian Skrip:

$ git clone https: // github.com/linuxconfig/compile-php-debian.git 

Seterusnya, navigasi ke Compile-PHP-Debian Direktori:

$ CD Compile-PhP-Debian

Sekarang tentukan apa versi php 7 yang ingin anda pasang dan masukkan nombor versi yang anda pilih sebagai hujah install_php.sh Skrip. Contohnya untuk memasang versi php 7.0.8 Masukkan:

# ./install_php.SH 7.0.8 untuk PHP Versi 7.1.0 Run # ./install_php.SH 7.1.0 

Pemasangan mungkin memerlukan sedikit masa. Setelah selesai memulakan daemon php-fpm dengan melaksanakan perkhidmatan Perintah:

# Perkhidmatan Php7-Fpm Mula # Perkhidmatan Php7-Fpm Status [OK] PHP-7.1.0-FPM sedang berjalan. 

Daemon php-fpm kini mendengar di localhostNombor port 9000. Anda juga boleh cuba menyambung ke daemon php-fpm secara langsung menggunakan CGI-FCGI arahan yang terdapat dalam libfcgi0ldbl Pakej:

# CGI -FCGI -Bind -Connect 127.0.0.1: 9000 X-Powered-by: PHP/7.1.0 jenis kandungan: teks/html; charset = UTF-8 

Ini melengkapkan pemasangan PHP 7 anda pada sistem Debain 8 Linux anda.

Pemasangan manual

Pemasangan prasyarat

Mari kita mulakan dengan pemasangan semua prasyarat agar sesuai dengan pilihan kompilasi PHP yang paling biasa:

# apt-get install autoconf bison build-essential git-core libbz2-dev libcurl4-openssl-dev libfreetype6-dev libicu-dev libjpeg-dev libmcrypt-dev libpng-dev libpspell-dev libreadline-dev libssl-dev libxml2-dev pkg- konfigurasi 

Muat turun kod sumber php

Mungkin cara paling mudah untuk mendapatkan kod sumber php untuk mengklon repositori php di github. Jalankan arahan Linux berikut untuk mengklasifikasikan Direktori Sumber PHP:

$ git clone https: // github.com/php/php-src.git 

Sekali klon git Operasi selesai anda akan ditinggalkan dengan nama direktori baru PHP-SRC.

Alternatif lain adalah untuk mendapatkan tarball versi PHP tertentu yang anda
ingin memasang dengan memuat turunnya terus dari http: // php.bersih/muat turun.php. Kelebihan dalam kes ini adalah keperluan saiz muat turun yang minimum. Namun, anda tidak akan dapat memilih
versi yang berbeza untuk pelbagai penyebaran.

Penyusunan Kod Sumber PHP

Pada peringkat ini, kami sudah bersedia untuk melakukan kompilasi kod sumber php. Navigasi ke dimuat turun sebelumnya PHP-SRC Direktori:

$ CD php-src 

Seterusnya, tentukan versi PHP yang ingin anda kumpulkan dan pasang. Jalankan perkara berikut git Perintah untuk menyenaraikan semua versi Php 7 yang tersedia:

$ git cawangan -a | GREP PHP-7 Remotes/Asal/PHP-7.0 Remot/Asal/PHP-7.0.0 Remot/Asal/PHP-7.0.1 jauh/asal/php-7.0.10 Jauh/Asal/PHP-7.0.11 Jauh/Asal/PHP-7.0.12 Jauh/Asal/PHP-7.0.13 Jauh/Asal/PHP-7.0.14 Jauh/Asal/PHP-7.0.2 Jauh/Asal/PHP-7.0.3 Jauh/Asal/PHP-7.0.4 Jauh/Asal/PHP-7.0.5 Jauh/Asal/PHP-7.0.6 Jauh/Asal/PHP-7.0.7 Jauh/Asal/PHP-7.0.8 Jauh/Asal/PHP-7.0.9 Jauh/Asal/PHP-7.1 jauh/asal/php-7.1.0 Remot/Asal/PHP-7.1.0RC1 Remotes/Asal/PHP-7.1.0RC2 Remotes/Asal/PHP-7.1.0RC3 Remotes/Asal/PHP-7.1.0beta1 jauh/asal/php-7.1.0Beta2 Remotes/Asal/PHP-7.1.0beta3 

Gunakan Git checkout Perintah untuk beralih ke cawangan versi PHP yang anda inginkan yang anda ingin digunakan untuk penyusunan. Contoh:

$ git checkout php-7.1.0 Cawangan PHP-7.1.0 Sediakan untuk mengesan cawangan jauh php-7.1.0 dari asal. Beralih ke cawangan baru 'php-7.1.0 '' 

Seterusnya, buat direktori untuk digunakan sebagai sasaran pemasangan. Dalam kes kita akan menjadi /usr/local/php-7.1.0:

# mkdir/usr/local/php-7.1.0 

dan tentukan semua rentetan kompilasi. Ambil nota khas mengenai --awalan dan --dengan-config-file-scan-dir rentetan konfigurasi yang menentukan pemasangan dan konfigurasi
tetapan.Berikut adalah senarai pilihan kompilasi PHP yang paling biasa.

Rasa, bebas mengemas kini senarai agar sesuai dengan keperluan anda. Bergantung pada pilihan anda, anda mungkin perlu memasang tambahan
prasyarat. Salin dan tampal di bawah teks ke terminal anda diikuti dengan masukkan:

Configure_strings = "-enable-bcmath \ --enable-calendar \ --enable-dba \ --enable-exif \ --enable-filter \ --enable-fpm \ --enable-ftp \ --enable-gd -native-ttf \ --enable-intl \ --enable-mbstring \ --enable-mysqlnd \ --enable-pcntl \ --enable-shmop \ --enable-simplexml \ --enable-soap \ --enable -Sockets \ --Enable-sysvmsg \ --enable-sysvsem \ --enable-sysvshm \ --enable-wddx \ --enable-xmlreader \ --enable-xmlwriter \ --enable-zip \ --prefix =/////////////////////////////////////////////////// USR/Local/PHP-7.1.0 \-with-bz2 \ --with-config-file-scan-dir =/usr/local/php-7.1.0/etc/conf.d \ --with-curl \ --with-fpm-group = www-data \ --with-fpm-user = www-data \ --with-freetype-dir \ --with-gd \ --with- getText \ --with-jpeg-dir \ --with-mcrypt \ --with-mhash \ --with-mysqli = mysqlnd \ --with-mysql-sock =/var/run/mysqld/mysqld.sock \ --with-openssl \ --without-pear \ --with-pdo-mysql = mysqlnd \ --with-pdo-sqlite \ --with-png-dir \ --with-pspell \ --with- readline \ --with-sqlite3 \ --with-zlib " 

Perkara di atas akan ditetapkan Configure_strings Pemboleh ubah shell mengandungi semua pilihan kompilasi PHP anda. Seterusnya, kita perlu membina konfigurasi dan makefiles kita. Untuk berbuat demikian melaksanakan:

$ ./BuildConf -Memaksa BuildConf Mengeluarkan Konfigurasi Cache Membangun semula Aclocal.M4 Membangun Konfigurasi Membina semula Utama/PHP_CONFIG.h.dalam 

Seterusnya, lakukan konfigurasi kompilasi:

$ ./konfigurasikan $ configure_strings 

Sekiranya tiada kesilapan yang dihasilkan oleh perkara di atas konfigurasikan perintah, maka waktunya untuk melakukan kompilasi dengan menjalankan a buat Perintah:

$ membuat ... bina lengkap. Jangan lupa untuk menjalankan 'membuat ujian'. 

Setelah penyusunan jika kod sumber PHP selesai, secara pilihan melaksanakan membuat ujian perintah atau lari buat pemasangan perintah untuk memasang semua binari yang disusun sebelumnya ke dalamnya
Direktori yang berkaitan:

# Buat pemasangan pemasangan sambungan bersama:/usr/local/php-7.1.0/lib/php/extensions/no-debug-non-zts-20160303/memasang php cli binari:/usr/local/php-7.1.0/bin/Memasang PHP CLI Man Page:/usr/local/php-7.1.0/php/man/man1/memasang php fpm binari:/usr/local/php-7.1.0/SBIN/Memasang php fpm config:/usr/local/php-7.1.0/etc/Memasang PHP FPM Man Page:/usr/local/php-7.1.0/PHP/MAN/MAN8/Memasang Halaman Status PHP FPM:/USR/Local/PHP-7.1.0/PHP/PHP/FPM/Memasang PHPDBG binari:/usr/local/php-7.1.0/bin/memasang phpdbg man:/usr/local/php-7.1.0/php/man/man1/memasang php cgi binari:/usr/local/php-7.1.0/bin/Memasang PHP CGI Man Page:/usr/local/php-7.1.0/php/man/man1/memasang persekitaran membina:/usr/local/php-7.1.0/lib/php/membina/memasang fail header:/usr/local/php-7.1.0/Sertakan/PHP/Memasang Program Penolong:/USR/Local/PHP-7.1.0/bin/Program: Program PHPIZE: PHP-CONFIG Memasang halaman lelaki:/usr/local/php-7.1.0/php/man/man1/Page: phpize.1 Halaman: PHP-Config.1/PHP -SRC/BUILD/SHTOOL INSTALL -C EXT/PHAR/PHAR.PHAR/USR/LOKAL/PHP-7.1.0/bin ln -s -f phar.PHAR/USR/LOKAL/PHP-7.1.0/bin/Phar Memasang tajuk PDO:/usr/local/php-7.1.0/termasuk/php/ext/pdo/ 

Semua selesai. Php 7.1.0 kini dipasang. Untuk mengesahkan melaksanakan:

$/usr/tempatan/php-7.1.0/bin/php -v php 7.1.0 (CLI) (Dibina: 2 Jan 2017 09:09:59) (NTS) Hak Cipta (c) 1997-2016 Kumpulan PHP Zend Engine v3.1.0-dev, Hak Cipta (c) 1998-2016 Zend Technologies 

Pemasangan pengurus proses fastcgi

Dalam bahagian ini, kami akan memasang php-fpm untuk digunakan sebagai depan untuk pemasangan dengan webservers seperti nginx atau apache. Pertama, buat pautan simbolik yang baru dikumpulkan
/usr/local/php- $ versi/sbin/php-fpm Perduaan untuk menjadikan pemasangan kami kemas:

# ln -s/usr/local/php -7.1.0/SBIN/PHP-FPM/USR/LOCAL/PHP-7.1.0/SBIN/PHP-7.1.0-fpm 

Masih dalam PHP-SRC direktori, persediaan lalai php.Ini konfigurasi:

# CP PHP.INI Production/USR/Local/PHP-7.1.0/lib/php.Ini 

Dayakan fail konfigurasi daemon PHP-FPM:

# mv/usr/local/php-7.1.0/etc/php-fpm.D/www.Conf.Lalai/USR/Local/PHP-7.1.0/etc/php-fpm.D/www.Conf 

Gunakan editor teks dan buat baru /usr/local/php-7.1.0/etc/php-fpm.Conf Fail konfigurasi dengan kandungan berikut:

[Global] PID =/var/run/php7-fpm.pid error_log =/var/log/php7-fpm.Log termasuk =/usr/tempatan/php-7.1.0/etc/php-fpm.d/*.Conf 

Dayakan modul PHP tambahan

Masukkan sebarang arahan modul yang anda ingin dapatkan php.Ini Fail konfigurasi. Contohnya untuk membolehkan modul PHP OPCACHE ZEND berjalan:

# echo "zend_extension = opcache.Jadi ">>/usr/local/php-7.1.0/lib/php.Ini 

Konfigurasi Php7-Fpm init.D skrip

Pertama, masukkan diubah suai berikut Php7-Fpm.di dalamnya skrip ke /etc/init.d/ Direktori:

# wget -qo /etc /init.d/php7-fpm https: // linuxconfig.org/imej/php7-fpm.di dalamnya 

Sekiranya anda telah memasang versi PHP yang berbeza selain 7.1.0 Gunakan editor teks anda dan ubah pembolehubah skrip berikut agar sesuai dengan php anda yang dipasang Versi:

Path =/sbin:/usr/sbin:/bin:/usr/bin:/usr/local/php-version/sbin name = php-version-fpm daemon =/usr/local/php-version/sbin/name Conffile =/usr/local/php-version/etc/php-fpm.Conf 

Terakhir, buat /etc/init.d/php7-fpm boleh dilaksanakan dan dijalankan udpate-rc.d Perintah:

# chmod +x /etc /init.d/php7-fpm # update-rc.D Php7-Fpm lalai 

Mula PHP-FPM Daemon

Sekarang anda sepatutnya dapat memulakan daemon php-fpm dengan melaksanakan perkhidmatan Perintah:

# Perkhidmatan Php7-Fpm Mula # Perkhidmatan Php7-Fpm Status [OK] PHP-7.1.0-FPM sedang berjalan. 

Daemon php-fpm kini mendengar di localhostNombor port 9000.

Tutorial Linux Berkaitan:

  • Menambah repo tepi pendarahan ke Kali Linux
  • Gelung bersarang dalam skrip bash
  • Mint 20: Lebih baik daripada Ubuntu dan Microsoft Windows?
  • Perkara yang hendak dipasang di Ubuntu 20.04
  • Distro linux terbaik untuk pemaju
  • Berapa kerap anda perlu reboot pelayan Linux anda?
  • Bash dan DD: Menguji kelajuan pemacu kilat dengan skrip mudah
  • Sistem Hung Linux? Cara melarikan diri ke baris arahan dan ..
  • Manjaro Linux vs Arch Linux
  • Ubuntu 22.04 Ciri dan Tarikh Siaran