ວິທີການຕິດຕັ້ງ PHP 7 ສຳ ລັບ Apache ຫຼື Nginx ໃນ Ubuntu 14.04 ແລະ 14.10
ຫລາຍເດືອນຫລັງຈາກ PHP 7.0 ທີ່ມີສະຖຽນລະພາບຖືກປ່ອຍອອກມາ, ນີ້ອາດຈະເປັນເວລາທີ່ ເໝາະ ສົມ ສຳ ລັບທ່ານທີ່ຈະຄິດທີ່ຈະຍົກລະດັບມັນຈາກລຸ້ນເກົ່າ.
ມີຄວາມລະມັດລະວັງສະ ເໝີ ກ່ຽວກັບການຍົກລະດັບໂດຍສະເພາະໃນສະພາບແວດລ້ອມການຜະລິດ, ແຕ່ດຽວນີ້ມັນເປັນຄວາມຄິດທີ່ດີທີ່ຈະຍົກລະດັບເພື່ອທີ່ຈະເພີດເພີນກັບການປັບປຸງຄວາມໄວ, ແລະຍັງມີຄຸນລັກສະນະຕ່າງໆເຊັ່ນ: ປະເພດ scalar hinting ບວກກັບອີກຫຼາຍໆຢ່າງ.
ທ່ານສາມາດຕິດຕັ້ງ PHP ສອງລຸ້ນໃນລະບົບຂອງທ່ານແລະໃຊ້ ໜຶ່ງ ສະບັບເພື່ອຈຸດປະສົງການທົດສອບ, ແຕ່ຈື່ໄວ້ວ່າທ່ານພຽງແຕ່ເປີດໃຊ້ໂປຣແກຣມ PHP Apache ໜຶ່ງ ຊຸດໃນເວລາທີ່ ກຳ ນົດ.
ຄູ່ມືນີ້ແມ່ນສຸມໃສ່ການຍົກລະດັບຈາກ PHP 5.X, ໂດຍໃຊ້ mod_php ໃນການເຊື່ອມຕໍ່ກັບ Apache Web server ຫຼື PHP-FPM ໃນການເຊື່ອມຕໍ່ກັບ Nginx Web server.
<
ຕອນນີ້ໃຫ້ພວກເຮົາເຂົ້າເບິ່ງວິທີທີ່ທ່ານສາມາດຍົກລະດັບໃຫ້ກັບ PHP ລຸ້ນລ້າສຸດແລະຍັງຕັ້ງຄ່າລະບົບຂອງທ່ານເພື່ອໃຊ້ມັນ.
ວິທີການຕິດຕັ້ງ PHP 7 ໃນ Ubuntu 14.04 ແລະ 14.10
ກ່ອນອື່ນ, ທ່ານຈະຕ້ອງເພີ່ມ PPA ທີ່ຖືກຮັກສາໄວ້ໂດຍOndřejSurý ສຳ ລັບ Debian ແລະອະນຸພັນຂອງມັນເຊັ່ນ Ubuntu ໂດຍການ ດຳ ເນີນ ຄຳ ສັ່ງດ້ານລຸ່ມ:
$ sudo add-apt-repository ppa:ondrej/php
ຕໍ່ໄປປັບປຸງລະບົບຂອງທ່ານດັ່ງຕໍ່ໄປນີ້:
$ sudo apt-get update
ທຸກສິ່ງທຸກຢ່າງແມ່ນໄດ້ ກຳ ນົດໄວ້ແລ້ວ, ແລະທ່ານສາມາດຕິດຕັ້ງ PHP 7.0, ແຕ່ພວກເຮົາຈະເບິ່ງການຍົກລະດັບ ສຳ ລັບ Apache ແລະ Nginx ໃນຫລາຍພາກສ່ວນ.
ສ່ວນນີ້ແມ່ນ ສຳ ລັບລະບົບທີ່ໃຊ້ Apache ເຊິ່ງລະຫັດ PHP ຈະຖືກປະຕິບັດໂດຍໃຊ້ໂມດູນ mod_php
. ຕິດຕັ້ງໂປແກຼມ PHP ລຸ້ນລ້າສຸດທີ່ແລ່ນ ຄຳ ສັ່ງຂ້າງລຸ່ມນີ້:
$ sudo apt-get install php7.0
Reading package lists... Done Building dependency tree Reading state information... Done The following extra packages will be installed: libapache2-mod-php7.0 libssl1.0.2 php-common php7.0-cli php7.0-common php7.0-json php7.0-opcache php7.0-readline Suggested packages: php-pear The following NEW packages will be installed: libapache2-mod-php7.0 libssl1.0.2 php-common php7.0 php7.0-cli php7.0-common php7.0-json php7.0-opcache php7.0-readline 0 upgraded, 9 newly installed, 0 to remove and 80 not upgraded. Need to get 4,371 kB of archives. After this operation, 17.2 MB of additional disk space will be used. Do you want to continue? [Y/n] y
ດຽວນີ້ PHP ໄດ້ຖືກຍົກລະດັບຢູ່ໃນລະບົບຂອງທ່ານ, ແຕ່ຖ້າທ່ານ ກຳ ລັງໃຊ້ລະບົບການຄຸ້ມຄອງຖານຂໍ້ມູນ MySQL, ທ່ານຈະຕ້ອງປະຕິບັດ ຄຳ ສັ່ງຕໍ່ໄປນີ້ເພື່ອປັບປຸງການຜູກມັດ PHP-MySQL ແລະທ່ານກໍ່ ຈຳ ເປັນຕ້ອງຕິດຕັ້ງບາງໂມດູນທີ່ເປັນປະໂຫຍດເຊັ່ນ: Curl, GD , Cli, JSON, ແລະອື່ນໆ.
$ sudo apt-get install php7.0-mysql php7.0-cli php7.0-gd php7.0-json
ຖ້າທ່ານຕ້ອງການຕິດຕັ້ງໂມດູນ PHP7.0 ເພີ່ມເຕີມ, ທ່ານສາມາດໃຊ້ ຄຳ ສັ່ງ apt-cache ເພື່ອລາຍຊື່ທຸກ PHP7.0 ແລະຕິດຕັ້ງ.
$ sudo apt-cache search php7
php-radius - radius client library for PHP php-http - PECL HTTP module for PHP Extended HTTP Support php-uploadprogress - file upload progress tracking extension for PHP php-mongodb - MongoDB driver for PHP php7.0-common - documentation, examples and common module for PHP libapache2-mod-php7.0 - server-side, HTML-embedded scripting language (Apache 2 module) php7.0-cgi - server-side, HTML-embedded scripting language (CGI binary) php7.0-cli - command-line interpreter for the PHP scripting language php7.0-phpdbg - server-side, HTML-embedded scripting language (PHPDBG binary) php7.0-fpm - server-side, HTML-embedded scripting language (FPM-CGI binary) libphp7.0-embed - HTML-embedded scripting language (Embedded SAPI library) php7.0-dev - Files for PHP7.0 module development php7.0-curl - CURL module for PHP php7.0-enchant - Enchant module for PHP php7.0-gd - GD module for PHP php7.0-gmp - GMP module for PHP php7.0-imap - IMAP module for PHP php7.0-interbase - Interbase module for PHP php7.0-intl - Internationalisation module for PHP php7.0-ldap - LDAP module for PHP php7.0-mcrypt - libmcrypt module for PHP php7.0-readline - readline module for PHP php7.0-odbc - ODBC module for PHP php7.0-pgsql - PostgreSQL module for PHP php7.0-pspell - pspell module for PHP php7.0-recode - recode module for PHP php7.0-snmp - SNMP module for PHP php7.0-tidy - tidy module for PHP php7.0-xmlrpc - XMLRPC-EPI module for PHP php7.0-xsl - XSL module for PHP (dummy) php7.0 - server-side, HTML-embedded scripting language (metapackage) php7.0-json - JSON module for PHP php-all-dev - package depending on all supported PHP development packages php7.0-sybase - Sybase module for PHP php7.0-sqlite3 - SQLite3 module for PHP php7.0-mysql - MySQL module for PHP php7.0-opcache - Zend OpCache module for PHP php-apcu - APC User Cache for PHP php-xdebug - Xdebug Module for PHP php-imagick - Provides a wrapper to the ImageMagick library php-ssh2 - Bindings for the libssh2 library php-redis - PHP extension for interfacing with Redis php-memcached - memcached extension module for PHP, uses libmemcached php-apcu-bc - APCu Backwards Compatibility Module php-amqp - AMQP extension for PHP php7.0-bz2 - bzip2 module for PHP php-rrd - PHP bindings to rrd tool system php-uuid - PHP UUID extension php-memcache - memcache extension module for PHP php-gmagick - Provides a wrapper to the GraphicsMagick library php-smbclient - PHP wrapper for libsmbclient php-zmq - ZeroMQ messaging bindings for PHP php-igbinary - igbinary PHP serializer php-msgpack - PHP extension for interfacing with MessagePack php-geoip - GeoIP module for PHP php7.0-bcmath - Bcmath module for PHP php7.0-mbstring - MBSTRING module for PHP php7.0-soap - SOAP module for PHP php7.0-xml - DOM, SimpleXML, WDDX, XML, and XSL module for PHP php7.0-zip - Zip module for PHP php-tideways - Tideways PHP Profiler Extension php-yac - YAC (Yet Another Cache) for PHP php-mailparse - Email message manipulation for PHP php-oauth - OAuth 1.0 consumer and provider extension php-propro - propro module for PHP php-raphf - raphf module for PHP php-solr - PHP extension for communicating with Apache Solr server php-stomp - Streaming Text Oriented Messaging Protocol (STOMP) client module for PHP php-gearman - PHP wrapper to libgearman php7.0-dba - DBA module for PHP
ເມື່ອ PHP7.0 ແລະໂມດູນຂອງມັນຖືກຕິດຕັ້ງແລ້ວ, ທ່ານສາມາດເລີ່ມຕົ້ນ Apache server ຂອງທ່ານຄືນ ໃໝ່ ແລະກວດສອບເວີຊັນ PHP ດັ່ງທີ່ສະແດງ:
$ sudo service apache2 restart $ php -v
PHP 7.0.7-1+donate.sury.org~trusty+1 (cli) ( NTS ) Copyright (c) 1997-2016 The PHP Group Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies
ທ່ານຍັງສາມາດກວດສອບຂໍ້ມູນຂອງ PHP7 ໂດຍການສ້າງເອກະສານ info.php
ພາຍໃຕ້/var/www/html.
$ sudo vi /var/www/html/info.php
ວາງລະຫັດຕໍ່ໄປນີ້ແລະເຂົ້າ ໜ້າ ເວັບຜ່ານ http://server_IP-address/info.php
.
<?php phpinfo(); ?>
ພາກນີ້ຈະພາທ່ານຜ່ານຂັ້ນຕອນການຍົກລະດັບ PHP7.0 ແລະອັບເດດ PHP-FPM ກັບເຄື່ອງແມ່ຂ່າຍເວັບໄຊຕ໌ Nginx, ເຊິ່ງລະຫັດ PHP ຖືກປະຕິບັດໂດຍໃຊ້ PHP-FPM.
ດໍາເນີນການຄໍາສັ່ງຂ້າງລຸ່ມນີ້ເພື່ອຕິດຕັ້ງແພກເກດ PHP-FPM ຫຼ້າສຸດ:
$ sudo apt-get install php7.0 $ sudo apt-get install php7.0-fpm
ດຽວນີ້ PHP ໄດ້ຖືກປັບປຸງແລ້ວ, ແຕ່ຖ້າທ່ານ ກຳ ລັງໃຊ້ MySQL, ຫຼັງຈາກນັ້ນທ່ານຈະຕ້ອງປະຕິບັດ ຄຳ ສັ່ງຕໍ່ໄປນີ້ເພື່ອປັບປຸງການຜູກມັດ PHP-MySQL ແລະບາງໂມດູນເພີ່ມເຕີມດັ່ງທີ່ສະແດງ:
$ sudo apt-get install php7.0-mysql php7.0-cli php7.0-gd php7.0-json
ຕໍ່ໄປ, ທ່ານ ຈຳ ເປັນຕ້ອງເພີ່ມເຕີມ ຄຳ ສັ່ງ fastcgi_pass
ໃນເອກະສານ/etc/nginx/sites-enable/default ຫຼືແຟ້ມທັງ ໝົດ ສຳ ລັບເວັບໄຊທ໌ເສມືນຂອງທ່ານທີ່ຕ້ອງໃຊ້ແລະສະ ໜັບ ສະ ໜູນ PHP, ຕັ້ງແຕ່ເສັ້ນທາງຂອງ PHP ເອກະສານຊັອກເກັດ -FPM ທີ່ PHP ໃຊ້ເພື່ອສື່ສານກັບ Nginx ໄດ້ປ່ຽນໄປແລ້ວ.
ໃຊ້ບັນນາທິການທີ່ທ່ານມັກແລະເປີດເອກະສານເພື່ອແກ້ໄຂດັ່ງຕໍ່ໄປນີ້:
$ sudo vi /etc/nginx/sites-enabled/default
ປັບປຸງແກ້ໄຂຫຼືເພີ່ມເຕີມດັ່ງຕໍ່ໄປນີ້:
location ~ [^/]\.php(/|$) { fastcgi_split_path_info ^(.+?\.php)(/.*)$; if (!-f $document_root$fastcgi_script_name) { return 404; } fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_pass unix:/run/php/php7.0-fpm.sock; fastcgi_index index.php; include fastcgi_params; }
ຫຼັງຈາກນັ້ນ, ເລີ່ມ Nginx ແລະ php-fpm ດັ່ງຕໍ່ໄປນີ້:
$ sudo service nginx restart $ sudo service php7.0-fpm restart
ສຸດທ້າຍ, ທ່ານສາມາດທົດສອບວ່າ PHP ກຳ ລັງເຮັດວຽກຫຼືບໍ່ໂດຍການກວດສອບເວີຊັ່ນ PHP ຂອງທ່ານກ່ອນແລະຈາກນັ້ນທົດສອບກັບ Web server.
$ php -v
ທ່ານໄດ້ຮັບຂໍ້ມູນກ່ຽວກັບແພັກເກດ PHP ຂອງທ່ານໂດຍການຂຽນເອກະສານ info.php ນ້ອຍໆຢູ່ພາຍໃຕ້/usr/share/nginx/html/directory:
$ sudo vi /usr/share/nginx/html/info.php
ໃສ່ລະຫັດນີ້ໃສ່ໃນເອກະສານ info.php ຂອງທ່ານ:
<?php phpinfo(); ?>
ບັນທຶກແລະອອກຈາກແຟ້ມ.
ເປີດໂປແກຼມທ່ອງເວັບຂອງທ່ານ, ໃສ່ http://server_IP-address/info.php
ແລະທ່ານຄວນຈະສາມາດເຫັນ ໜ້າ ທີ່ຢູ່ຂ້າງລຸ່ມນີ້ເຊິ່ງສະແດງໃຫ້ທ່ານຮູ້ລາຍລະອຽດກ່ຽວກັບຊຸດ PHP ຂອງທ່ານ.
ດຽວນີ້ທ່ານສາມາດໃຊ້ PHP 7.0 ໃນລະບົບ Ubuntu 14.04/14.10 ຂອງທ່ານດ້ວຍຄວາມສຸກ, ແລະຂ້ອຍຫວັງວ່າທ່ານຈະຮູ້ວ່າ ຄຳ ແນະ ນຳ ນີ້ເປັນປະໂຫຍດ.
ສຳ ລັບຂໍ້ມູນເພີ່ມເຕີມກ່ຽວກັບການຍົກລະດັບ PHP ຫລື ຄຳ ຖາມ, ຄຳ ເຫັນຂອງທ່ານຍິນດີຕ້ອນຮັບໃນສ່ວນ ຄຳ ເຫັນຂ້າງລຸ່ມນີ້.