Vytváření PHP 5.4 ze zdroje na Debian Squeeze
Verze 1.0.0
Pro ISPConfig:3.0.5.1
Autor:Michel Käser
Tento tutoriál popisuje, jak můžete sestavit PHP 5.4 ze zdroje na Debian Squeeze. Později nainstalujeme další moduly prostřednictvím PECL a přidáme jej jako další verzi PHP do rozbalovací nabídky ISPConfig.
Na konci budete mít plně funkční instalaci PHP 5.4, kterou lze vybrat v rozhraní ISPConfig a balíček .deb, který lze použít i na jiném serveru.
Neposkytuji žádnou záruku, že to pro vás bude fungovat!
1 požadavky
Abyste mohli postupovat podle tohoto návodu, budete potřebovat následující:
- dokonalý server se systémem Debian Squeeze
- instalace ISPConfig (3.0.5 nebo novější)
- asi 45 minut na pozorné čtení
2 předběžné poznámky
Vřele doporučuji kompilovat balíčky na samostatném serveru, protože to vyžaduje instalaci velkého množství balíčků, které jinak nepotřebujeme. Pokud nemáte více než jeden server, může být stále chytré si někde na pár hodin/dní pronajmout levný VPS.
Příkaz/parametry configure, které budeme používat, jsou co nejblíže těm, které se používají k sestavení běžných balíčků PHP pro Debian, které jsou dostupné v oficiálních repozitářích.
V neposlední řadě lze většinu těchto informací nalézt v příručce ISPConfig - Víš, co se ti snažím říct, že?;)
3 Předpoklady
(na samostatném serveru)
Než začneme s procesem sestavování, měli byste nainstalovat nějaké další balíčky. Pár z nich je jen proto, že se mi líbí víc (např. nano):
apt-get -y install nano build-essential checkinstall zip
checkinstall nám pomůže vytvořit balíčky .deb. Zkontrolujte zdroj z Credits Pokud se o ní chcete dozvědět více.
4 Stahování PHP
(na samostatném serveru)
Než začneme stahovat a kompilovat naši vlastní verzi PHP, vytvoříme několik adresářů:
mkdir -p /opt/php/5.4.12
mkdir /usr/local/src/php5-build
a hned po dokončení začněte stahovat zdroje PHP:
cd /usr/local/src/php5-build
wget http://ch1.php.net/distributions/php-5.4.12.tar.gz
tar -xzvf php-5.4.12. tar.gz
cd php-5.4.12/
Protože potřebujeme načíst závislosti PHP, ujistěte se, že máte ve svém /etc/apt/sources.list řádek deb-src:
nano /etc/apt/sources.list
deb-src http://ftp.debian.org/debian squeeze main contrib non-free
a aktualizujte mezipaměť balíčku:
aktualizace apt-get
5 Vytváření PHP
(na samostatném serveru)
Podle výše uvedených kroků jsme připravili náš systém tak, aby byl připraven ke kompilaci. Nyní musíme nejprve načíst/nainstalovat závislosti:
apt-get build-dep php5
a nainstalujte několik dalších balíčků:
apt-get -y install libfcgi-dev libfcgi0ldbl libjpeg62-dbg libmcrypt-dev libssl-dev
Konečně jsme připraveni vytvořit PHP. Jako obvykle je prvním krokem spuštění příkazu configure. Chcete-li získat seznam všech dostupných možností, použijte ./configure --help:
./configure \
--prefix=/opt/php/5.4.12 \
--with-zlib-dir \
--with-freetype-dir \
- -enable-cgi \
--enable-mbstring \
--with-libxml-dir=/usr \
--enable-soap \
--enable-calendar \
--with-curl \
--with-mcrypt \
--with-zlib \
--with-gd \
--disable-rpath \
--enable-inline-optimization \
--with-bz2 \
--with-zlib \
--enable-sockets \
--enable- sysvsem \
--enable-sysvshm \
--enable-pcntl \
--enable-mbregex \
--with-mhash \
--enable- zip \
--with-pcre-regex \
--with-mysql \
--with-pdo-mysql \
--with-mysqli \
--with-jpeg-dir=/usr \
--with-png-dir=/usr \
--enable-gd-native-ttf \
--with-openssl \
--with-libdir=lib64 \
--with-libxml-dir=/usr \
--enable-exif \
--enable-dba \
--with-gettext \
--enable-shmop \
--enable-sysvmsg \
--enable-wddx \
--with-imap \
--with-imap-ssl \
--with-kerberos \
--enable-bcmath \
--enable-ftp \
--enable-intl \
--with-pspell
Pokud vše proběhlo v pořádku a neobdrželi jste žádné chybové zprávy, pokračujte:
udělat
skutečně zkompilovat.
6 Vytvoření balíčku
(na samostatném serveru)
Normálně bychom nyní použili make install k instalaci zkompilovaných zdrojů do systému. Protože bychom však chtěli mít soubor .deb, použijeme nástroj checkinstall:
checkinstall -D provedení instalace
Hned na začátku se vás zeptá na vytvoření dokumentů -> zvolte ano (y) a zadejte krátké shrnutí vašeho balíčku, např.
PHP 5.4.12 zkompilované ze zdroje na architektuře Debian Squeeze (6.0.7) amd64
Následující obrazovka vám umožňuje manipulovat také s mnoha dalšími hodnotami. Doporučuji změnit alespoň:
0:např. Internetové služby Rackster
2:php-5.4.12
11:php-5.4.12
Po dokončení stiskněte enter. checkinstall pak vygeneruje balíček za vás.
Ve výsledném balíčku však chybí soubory .ini, takže vytvoříme archiv .zip:
zip /root/php-5.4.12.zip *.deb *.ini-*
Hotovo. Skvělé!
7 Instalace balíčku
Vše až sem bylo provedeno (nebo mělo být provedeno) na jeho vlastním serveru. Tato část se odehrává ve vašem systému ISPConfig. Ujistěte se, že jste sem přenesli/zkopírovali výsledný soubor .zip.
Rozbalte archiv:
rozbalte php-5.4.12.zip
nainstalujte balíček:
dpkg -i php-*.deb
a zkopírujte soubory .ini:
cp *.ini-* /opt/php/5.4.12/lib
cp /opt/php/5.4.12/lib/php.ini-production /opt/php/5.4.12/lib/php. ini
8 Přidání dalších modulů
Kromě verze PHP nainstalované prostřednictvím správce balíčků dle vašeho výběru naše vlastní sestavení nebude moci používat moduly nainstalované např. apt – ale existuje snadná alternativa.
PEAR a PECL jsou jako správci balíčků pro PHP – nainstalujte je:
apt-get -y install php-pear
a změnit adresář:
cd /opt/php/5.4.12/etc
8.1 Instalace APC
pecl -C ./pear.conf update-channels
pecl -C ./pear.conf nainstalovat apc
Přijměte výchozí hodnoty všude. Po dokončení jej jednoduše musíme přidat do našeho php.ini:
nano /opt/php/5.4.12/lib/php.ini
extension=apc.so
8.2 Instalace uploadprogress
pecl -C ./pear.conf install uploadprogress
Přijměte výchozí hodnoty všude. Po dokončení jej jednoduše musíme přidat do našeho php.ini:
nano /opt/php/5.4.12/lib/php.ini
extension=uploadprogress.so
9 Přidání PHP do ISPConfig
V ISPConfig 3.0.5 můžete nakonfigurovat novou verzi PHP pod Systém> Další verze PHP . Na záložce Název pouze vyplníte název pro verzi PHP (např. 5.4.12) - tato verze PHP bude pod tímto názvem uvedena v nastavení webu v ISPConfig:
Server: Select the server where the PHP version is installed. Client: If this PHP version should be available for just for one specific client, select that client here. Otherwise, this PHP version will be available for all clients. PHP Name: 5.4.12
Přejděte do Nastavení FastCGI tab a vyplňte pole následovně:
Path to the PHP FastCGI binary: /opt/php/5.4.12/bin/php-cgi Path to the php.ini directory: /opt/php/5.4.12/lib
10 odkazů / kreditů
- http://www.ispconfig.org/ispconfig-3/ispconfig-3-manual/
- http://www.falkotimme.com/howtos/checkinstall/index.php
- https://www.rackster.ch/