Jak zainstalować PHP 7 z Apache i MariaDB na Centos 7/Debian 8

Jak zainstalować PHP 7 z Apache i MariaDB na Centos 7/Debian 8

W zeszłym tygodniu (dokładniej włączona Sierpień. 21, 2015), zespół programistów PHP ogłosił dostępność najnowszej wersji PHP 7 i zachęcili użytkowników i programistów na całym świecie do przetestowania.

Musimy jednak zauważyć, że ponieważ jest to RC (Zwolnienie kandydata) Wersja, oczekuje się, że może mieć błędy lub niezgodności z istniejącymi konfiguracjami, aby użytkownicy proszeni są o zgłoszenie ich za pomocą systemu śledzenia błędów i nie użycia PHP 7 w produkcji, podczas gdy pozostaje w tej fazie.

Skompiluj PHP 7 na CentoS 7 i Debian 8

Jasna strona polega na tym, że ta wersja zawiera kilka poprawek (możesz zapoznać się z tą stroną w projekcie Github Repozytorium szczegółowej listy nowych funkcji i ulepszeń), przy czym najbardziej wyróżniająca funkcja jest niezwykłym wzrostem wydajności w porównaniu z poprzednimi wersjami.

Ten artykuł przeprowadzi Cię przez proces instalacji i kompilacji PHP 7 RC1 z źródła tarbal Apache I Mariadb NA Centos 7 I Debian 8 Jessie. Te same instrukcje również działają Centos oparte na dystrybucjach, takie jak Rhel, Fedora, Naukowe Linux I Debian oparte na tym jak Ubuntu/Mennica.

Instalowanie PHP 7 w Centos 7 i Debian 8

Jak stwierdzono we wstępie, ponieważ ta wersja jest RC Zamiast stabilnego wydania, nie możemy rozsądnie oczekiwać, że znajdziemy go w repozytoriach. Z tego powodu będziemy musieli pobrać kod źródłowy i skompilować program od zera.

Zanim jednak to zrobimy, musimy to pamiętać, aby lepiej skorzystać PHP 7 i być może najlepszym sposobem na wypróbowanie go jest instalacja Apache I Mariadb - które możemy znaleźć w repozytoriach:

Na Centos 7

# Yum Update && Yum Zainstaluj httpd Mariadb Mariadb-server 

Na Debian 8

# aktualizacja Aptitude && Aptitude Zainstaluj Apache2 Mariadb-server mariadb-client mariadb.wspólny 

W obu przypadkach Tarball z kodem źródłowym Php Można pobrać i wyodrębnić w następujący sposób:

# wget https: // pobieranie.php.net/~ ab/php-7.0.0RC1.smoła.GZ # TAR XZF PHP-7.0.0RC1.smoła.GZ -C /Opt 

Po zakończeniu przejdźmy do /opt/php-7.0.0RC1 i wykonaj BuildConf skrypt z -siła przełącz, aby wymusić kompilację wersji RC:

# ls 
Php 7 Buildconf
# cd /opt /php-7.0.0RC1.smoła.GZ # ./BuildConf -Force 
Zbuduj php 7

Teraz nadszedł czas, aby wykonać nasze znane skonfiguruj Komenda. Podczas gdy poniższe opcje zapewnią standard PHP 7 Instalacja, możesz zapoznać się z pełną listą opcji w instrukcji PHP, aby lepiej dostosować instalację zgodnie z Twoimi potrzebami:

# ./Configure \--Prefix = $ home/php7/usr \--with-config-path = $ home/php7/usr/etc \ --enable-mbstring \ --enable-zip \ --enable-bcmath \ --enable-pcntl \ --enable-ftp \ --enable-exif \ --enable-calendar \ --enable-sysvmsg \ --enable-sysvsem \ --enable-sysvshm \ --enable-wddx \-- -With-Curl \--With-Mcrypt \--With-iconv \--With-gmp \--with-pspell \--with-gd \--with-jpeg-dir =/usr \--with-- png-dir =/usr \--with-zlib-dir =/usr \--with-xpm-dir =/usr \--with-freeType-dir =/usr \ --enable-native-ttf \ \ --enable-gd-jis-conv \--with-openssl \--with-pdo-mysql =/usr \--with-gettext =/usr \--with-zlib =/usr \--with-bz2 =/usr \--with-recode =/usr \--with-mysqli =/usr/bin/mysql_config \--with-apxs2 

Jeśli napotkasz następujący błąd:

Skonfiguruj: Błąd: Brak dopuszczalnego kompilatora C znaleziony w $ ścieżka patrz 'Config.Log ', aby uzyskać więcej informacji 
PHP 7 Konfiguruj

Po prostu zainstaluj GCC oraz zależności od następującego polecenia i uruchom powyższe skonfiguruj polecenie ponownie.

# mniam instaluj gcc [on Centos 7 pudełko] # aptitude instaluj gcc [on Debian 8 skrzynka] 

Będziesz na drodze do kompilacji PHP 7, co może potrwać chwilę. Jeśli istnieją inne brakujące biblioteki lub zasoby, ten proces nie powiedzie się, ale zawsze możesz je zainstalować i uruchomić ponownie.

Na przykład musiałem zainstalować libxml2-devel Po uzyskaniu następującego komunikatu o błędzie:

Skonfiguruj: Błąd: nie znaleziono xml2-config. Sprawdź instalację libxml2. 

Niestety, nie możemy omówić wszystkich scenariuszy przypadków, ponieważ zainstalowane oprogramowanie może się różnić w zależności od systemu do drugiego. Podczas instalacji możesz chcieć odwołać się do tej strony, która przedstawia kilka błędów, na które możesz napotkać podczas instalowania PHP ze źródła, wraz z ich odpowiednimi rozwiązaniami.

Na Centos 7

Oto pełna lista pakietów, które musiałem zainstalować w moim Centos 7 Pole przed ukończeniem procesu konfiguracji:

gcc libxml2-devel pkgconfig openssl-devel bzip2-devel curl-devel libpng-devel libpng-devel libjpeg-devel libxpm-devel freetype-devel-devel gmp-devel libmcrypt-devel mariadb-devel aspell-devel-devel httpd-devel-devel gmp-devel-devel-devel-devel-devel-devel-devel-devel-devel-devel-devel-devel-devel-devel maria 

Możesz zainstalować wszystkie powyższe wymagane pakiety z jednym pojedynczym mniam polecenie jak pokazano.

# yum instaluj gcc libxml2-devel pkgconfig openssl-devel bzip2-devel libpng-devel libpng-devel libjpeg-devel libxpm-devel freetype-devel gmp-devel libmcrypt-devel mariadb-devel aspell-devel-devel-devel-devel-devel-devel-devel-devel gmp-devel-devel-devel-devel-devel 

Poniższy komunikat wskazuje, że skonfiguracja zakończona pomyślnie:

Konfiguracja PHP 7

Następnie uruchomić,

# Zrób # Zrób instalację 

Po zakończeniu instalacji możesz sprawdzić wersję za pomocą wiersza polecenia:

Sprawdź wersję PHP

Na Debian 8

W Debian, Musiałem zainstalować następujące pakiety do procesu konfiguracji, aby pomyślnie zakończyć:

Make libxml2-dev libcurl4-openssl-dev libjpeg-dev libpng-dev libxpm-dev libmysqlclient-dev libicu-dev libfreetep-dev libxslt-dev libssl-dev libbz2-dev libgmpmp-dev libmcrypt-dev libppell-dev libbeCode-dev--ppsp-dev libssl-dev libbz2-dev libgmpmp-dev libmcrypt-dev libppell-dev librecode dev 

Możesz zainstalować wszystkie powyższe wymagane pakiety z apt-get polecenie Debian 8.

# apt-get instalacja Make libxml2-dev libcurl4-openssl-dev libjpeg-dev libpng-dev libxpm-dev libMysqlClient-dev libicu-dev libfreeteplepe6-dev libxslt-dev libssl-dev libbbz2-dev libgmp-dev libmcrypt-dev libppell librecode-dev apache2-dev 

Następnie dodaj, -z libdir =/lib/x86_64-linux-gnu do opcji konfiguracji i utwórz następujące symboli GMP.H plik nagłówka:

# ln -s/usr/include/x86_64-linux-gnu/gmp.h/usr/w cołą/gmp.H 

Potem uciekł robić I Zrób instalację jak w poprzedniej sprawie. W 10-15 minuty kompilacja powinna była zakończyć i możemy zweryfikować zainstalowaną wersję PHP jak poprzednio:

# Zrób # Zrób instalację 
Sprawdź wersję PHP w Debian 8

Konfigurowanie php.INI i testowanie instalacji PHP 7

Podczas instalacji PHP ze źródła, dwie próbki php.ini są zapewnione. W takim przypadku znajdują się one w środku /opt/php-7.0.0RC1:

# ls -l /opt /php -7.0.0RC1 | GREP PHP.ini 
Konfiguracja PHP 7 PHP.plik INI

Musisz teraz skopiować jeden z nich /USR/Local/Lib, który jest oznaczony jako domyślna lokalizacja dla takiego pliku, jak w przypadku notatek instalacji:

# cp /opt /php-7.0.0RC1/PHP.ini-rozwój/usr/lokalny/lib 

I nie zapomnij dodać tej dyrektywy konfiguracji do głównych plików konfiguracyjnych Apache.

/etc/httpd/conf/httpd.conf [on Centos 7 Box]/etc/apache2/apache2.cong in [on Debian 8 skrzynka] 
LoadModule php7_module/usr/lib64/httpd/module/libphp7.Więc Sethandler Application/X-HTTPD-PHP  

W Debian 8 możesz pominąć Module load Linia, a także musisz usunąć i utworzyć następujące symboliczne linki do wskazanych modułów Apache:

# cd/etc/apache2 # rm MODS-obserwowany/mpm_event.Conf # RM MODS-obserwowany/mpm_event.załaduj # ln -s mods -dostępny/mpm_prefork.conf mpm_prefork.conf # ln -s mods -dostępny/mpm_prefork.Załaduj mpm_prefork.obciążenie 

Następnie uruchom ponownie serwer WWW:

# systemCtl restart httpd [on Centos 7 pudełko] # Systemctl restart apache2 [on Debian 8 skrzynka] 

Jeśli się rozpoczyna Apache W Centos 7 Zwraca komunikat o błędzie, mówiąc, że nie może znaleźć Libphp7.Więc moduł, po prostu skopiuj na wskazaną ścieżkę z /opt/php-7.0.0RC1/.libs/libphp7.Więc.

Klasycznym sposobem testowania instalacji PHP/Apache jest użycie phpinfo () plik. Utwórz plik o nazwie test.php z następującymi zawartością w dokumencie dokumentu serwera WWW (/var/www/html W obu rozkładach):

 

I uruchom przeglądarkę w kliencie w sieci, aby przetestować:

http: // localhost/test.php lub http: // ip-address/test.php 
Sprawdź informacje PHP 7 w Centos 7 Sprawdź informacje PHP 7 w Debian 8

Streszczenie

W tym artykule wyjaśniliśmy, jak zainstalować PHP 7 z kodu źródłowego, najnowszy RC tego popularnego języka skrypcji po stronie serwera, który ma na celu poprawę wydajności przy niespotykanych wartościach. Dopóki nie dotrze do stajni Listopad tego roku 2015, jesteś SILNIE doradził NIE Użyj tej wersji w środowisku produkcyjnym.

Jeśli masz jakieś pytania / komentarze / sugestie dotyczące tego artykułu, daj nam znać, używając poniższego formularza.