Kuinka asentaa PHP 7 Apache- tai Nginx-sovelluksille Ubuntu 14.04 ja 14.10
Kuukausien kuluttua PHP 7.0: n vakaan version julkaisemisesta tämä voi olla oikea aika ajatella päivitystä vanhoista versioista.
Päivityksissä on aina varovaisuutta varsinkin tuotantoympäristössä, mutta on hyvä nyt päivittää, jotta voit nauttia nopeuden parannuksista, ja myös ominaisuuksia, kuten skalaarityypin vihjeet ja monet muut.
Voit asentaa kaksi PHP-versiota järjestelmääsi ja käyttää yhtä testaustarkoituksiin, mutta muista, että otat vain yhden PHP Apache -moduulin käyttöön tiettynä aikana.
Tämä opas keskittyy päivittämiseen PHP 5.X: stä käyttämällä mod_php: tä Apache-verkkopalvelimen tai PHP-FPM: n kanssa Nginx-Web-palvelimen yhteydessä.
- Asenna PHP 7 Ubuntuun 14.04 ja 14.10
- Päivittäminen PHP 7.0: ksi Apache-verkkopalvelimessa
- Päivittäminen PHP 7.0 -käyttöjärjestelmään Nginx-verkkopalvelimessa
Anna nyt sukeltaa siihen, kuinka voit päivittää uusimpaan PHP-versioon ja määrittää myös järjestelmän käyttämään sitä.
Kuinka asentaa PHP 7 Ubuntu 14.04 ja 14.10
Ensin sinun on lisättävä Ondřej Surýn ylläpitämä PPA Debianille ja sen johdannaisille, kuten Ubuntu, suorittamalla alla oleva komento:
$ sudo add-apt-repository ppa:ondrej/php
Seuraava päivitä järjestelmäsi seuraavasti:
$ sudo apt-get update
Kaikki on nyt asetettu, ja voit asentaa PHP 7.0: n, mutta tarkastelemme Apache- ja Nginx-päivityksiä eri osioissa.
Tämä osio on tarkoitettu järjestelmille, joissa on Apache, jossa PHP-koodi suoritetaan käyttämällä moduulia mod_php
. Asenna uusin PHP-versio suorittamalla alla oleva komento:
$ 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 on nyt päivitetty järjestelmässäsi, mutta jos käytät MySQL-tietokannan hallintajärjestelmää, sinun on suoritettava seuraava komento päivittääksesi PHP-MySQL-sidoksen ja sinun on asennettava hyödyllisiä moduuleja, kuten Curl, GD , Cli, JSON jne.
$ sudo apt-get install php7.0-mysql php7.0-cli php7.0-gd php7.0-json
Jos haluat asentaa lisää PHP7.0-moduuleja, voit apt-cache-komennon avulla luetella kaikki PHP7.0-moduulit ja asentaa ne.
$ 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
Kun PHP7.0 ja sen moduulit on asennettu, voit käynnistää Apache-verkkopalvelimesi uudelleen ja tarkistaa PHP-version kuvan osoittamalla tavalla:
$ 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
Voit myös tarkistaa PHP7-tiedot luomalla info.php
-tiedoston hakemistoon/var/www/html.
$ sudo vi /var/www/html/info.php
Lisää seuraava koodi ja siirry sivulle http://server_IP-address/info.php
-sivulla.
<?php phpinfo(); ?>
Tämä osa opastaa sinut päivittämään PHP7.0: een ja päivittämään PHP-FPM: n Nginx-Web-palvelimella, jossa PHP-koodi suoritetaan PHP-FPM: llä.
Asenna uusimmat PHP-FPM-paketit suorittamalla alla oleva komento:
$ sudo apt-get install php7.0 $ sudo apt-get install php7.0-fpm
PHP on nyt päivitetty, mutta jos käytät MySQL: ää, sinun on suoritettava seuraava komento päivittääksesi PHP-MySQL-sidonnan ja joitain lisämoduuleja kuvan osoittamalla tavalla:
$ sudo apt-get install php7.0-mysql php7.0-cli php7.0-gd php7.0-json
Seuraavaksi sinun on liitettävä fastcgi_pass
-direktiivi tiedostoon/etc/nginx/sites-enabled/default tai kaikkiin virtuaalisivustojesi tiedostoihin, joiden on käytettävä ja tuettava PHP: tä, koska PHP: n polku -FPM-pistorasiatiedosto, jota PHP käyttää kommunikoimaan Nginxin kanssa, on muuttunut.
Käytä suosikkieditoriasi ja avaa tiedosto muokkausta varten seuraavasti:
$ sudo vi /etc/nginx/sites-enabled/default
Muokkaa tai liitä seuraavasti:
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; }
Käynnistä sitten Nginx ja php-fpm uudelleen seuraavasti:
$ sudo service nginx restart $ sudo service php7.0-fpm restart
Lopuksi voit testata, toimiiko PHP vai ei, tarkistamalla ensin PHP-versiosi ja testaamalla sen sitten Web-palvelimella.
$ php -v
Saat tietoja PHP-paketeistasi kirjoittamalla pienen info.php-tiedoston tiedostoon/usr/share/nginx/html/hakemisto:
$ sudo vi /usr/share/nginx/html/info.php
Lisää tämä koodi info.php-tiedostoon:
<?php phpinfo(); ?>
Tallenna tiedosto ja poistu siitä.
Avaa selain, kirjoita http://server_IP-address/info.php
ja sinun pitäisi pystyä näkemään alla oleva sivu, joka näyttää sinulle tietoja PHP-paketistasi.
Voit nyt käyttää PHP 7.0: ta mielelläni Ubuntu 14.04/14.10 -järjestelmässäsi, ja toivon, että tämä opas on hyödyllinen.
Jos tarvitset lisätietoja PHP: n päivittämisestä tai kysyttävää, kommenttisi ovat tervetulleita alla olevaan kommenttiosioon.