A 2. oldal tartalma
Folytatás
A leírás első oldalán teljesítettük a PHP 5.6 forráskódjának lefordításához szükséges követelményeket, majd lefordítottuk és telepítettük a PHP 5.6.40-et. Ezen az oldalon pedig folytatjuk a munkát a PHP utólagos beállításaival, valamint felvesszük az ISPConfig 3 kezelőpanelben a PHP 5.6.40-et a választható PHP verziók listájába.
Utólagos beállítások
Konfigurációs fájlok bemásolása
A "gyári" konfigurációs fájlokat át kell másolni a működési helyükre.
php.ini átmásolása:
cp /usr/local/src/php-5.6-build/php-5.6.40/php.ini-production /opt/php-5.6.40/lib/php.ini
PHP-FPM konfigurációs fájl átmásolása:
cp /opt/php-5.6.40/etc/php-fpm.conf.default /opt/php-5.6.40/etc/php-fpm.conf
PHP-FPM beállítása
A PHP-FPM számára létre kell hozni a pool könyvtárat, amiben majd a weboldalak konfigurációs fájljai fognak kerülni:
mkdir -p /opt/php-5.6.40/etc/php-fpm.d
Nyissuk meg szerkesztésre a fentebb átmásolt konfigurációs fájlt:
nano /opt/php-5.6.40/etc/php-fpm.conf
És állítgassunk be néhány paramétert, amik eltérnek az alábbiaktól:
[...]
include=/opt/php-5.6.40/etc/php-fpm.d/*.conf
[...]
pid = run/php-fpm.pid
[...]
user = www-data
group = www-data
[...]
listen = 127.0.0.1:8999
Systemd unit fájl létrehozása
Létre kell hoznunk az indító fájlt, amivel bármikor el tudjuk indítani vagy le tudjuk állítani a PHP-FPM daemonját:
nano /lib/systemd/system/php-5.6.40-fpm.service
Tegyük bele az alábbi tartalmat:
[Unit] Description=The PHP 5.6.40 FastCGI Process Manager After=network.target [Service] Type=simple PIDFile=/opt/php-5.6.40/var/run/php-fpm.pid ExecStart=/opt/php-5.6.40/sbin/php-fpm --nodaemonize --fpm-config /opt/php-5.6.40/etc/php-fpm.conf ExecReload=/bin/kill -USR2 $MAINPID [Install] WantedBy=multi-user.target
Mentsük le, majd engedélyezzük a szolgáltatást és töltsük újra a systemd-t:
systemctl enable php-5.6.40-fpm.service
systemctl daemon-reload
PHP-FPM elindítása és ellenőrzése
Indítsuk el a PHP-FPM-et:
systemctl start php-5.6.40-fpm.service
Ha nincs semmi gond, akkor ez a parancs nem ad kimenetet.
Ellenőrizzük a folyamatlistában is, hogy minden stimmel-e:
ps -auxf | grep "php-fpm"
root 482 0.0 1.1 485884 45584 ? Ss 10:36 0:01 php-fpm: master process (/etc/php/7.0/fpm/php-fpm.conf) www-data 1009 0.0 0.2 485884 10512 ? S 10:36 0:00 \_ php-fpm: pool www www-data 1010 0.0 0.2 485884 10512 ? S 10:36 0:00 \_ php-fpm: pool www root 25160 0.0 0.0 12792 984 pts/1 S+ 21:34 0:00 \_ grep php-fpm root 25136 0.0 0.5 189836 23388 ? Ss 21:33 0:00 php-fpm: master process (/opt/php-5.6.40/etc/php-fpm.conf) www-data 25137 0.0 0.1 189836 8084 ? S 21:33 0:00 \_ php-fpm: pool www www-data 25138 0.0 0.1 189836 8084 ? S 21:33 0:00 \_ php-fpm: pool www
A folyamatok között látható, hogy fut a "gyári" PHP 7.0 FPM-je, alatta pedig a most feltelepített 5.6.40-es. Mindkettőnek a www-data a gazdája, mivel ezek a mester processzek. Amikor elindul egy weboldal valamelyik PHP-FPM-et használva, akkor újabb pool jön létre, ami már a weboldal felhasználójának nevében fog futni.
PHP bővítmények bekapcsolása, telepítése
Zend OPcache engedélyezése
A Zend OPcache gyorsabb PHP futtatást biztosít a köztes kódok cachelése és optimalizálása által. Javítja a PHP teljesítményét az előfordított szkript byte kódjainak a memóriában történő tárolásával.
Engedélyezéséhez nyissuk meg a php.ini fájlt:
nano /opt/php-5.6.40/lib/php.ini
És adjuk a fájl végéhez az alábbi sort:
zend_extension=opcache.so
Memcache engedélyezése (opcionális)
A Memcache modult először le kell fordítanunk, majd engedélyeznünk kell, mint ahogy az előző opcache-t is.
Telepítsük a fordításhoz szükséges libmemcached-dev csomagot:
apt-get -y install libmemcached-dev
Ezután futtassuk az alábbi parancsokat a Memcache modul fordításához:
cd /opt/php-5.6.40/etc/
pecl -C ./pear.conf update-channels
pecl -C ./pear.conf install memcache
Az utolsó parancs rákérdez, hogy engedélyezze-e a munkamenetek kezelésének támogatását:
Itt engedélyezzük az opciót.
Ezután szépen lefordul, majd írja, hogy módosítsuk a php.ini fájlunkat az új modulhoz. Tegyünk is így, nyissuk meg a php.ini fájlt:
nano /opt/php-5.6.40/lib/php.ini
És adjuk ezt a sort is a fájl legvégéhez:
extension=memcache.so
PHP-FPM újraindítása és ellenőrzés
Végül indítsuk újra a PHP-FPM-et:
systemctl start php-5.6.40-fpm.service
És ellenőrizzük a PHP-t:
/opt/php-5.6.40/bin/php --version
PHP 5.6.40 (cli) (built: Feb 18 2019 16:47:39) Copyright (c) 1997-2016 The PHP Group Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies
Most már írja a Zend OPcache-t is.
A PHP információkat is ellenőrizhetjük, de még ezt is csak a parancssorból, mivel még nincs működő weboldalunk:
/opt/php-5.6.40/bin/php --info
Itt kiírja mindazt, amit a webes felületen a phpinfo() függvény is kiír, tehát lehet mazsolázni a paraméterek között.
PHP 5.6.40 engedélyezése az ISPConfig3-ban
Elérkeztünk az utolsó fejezetünkhöz, ahol learathatjuk a babérokat: engedélyezhetjük ezt a PHP verziót az ISPConfig3 kezelőpanelünkben, ami után bármelyik weboldal számára választható PHP verzióként érhető majd el.
Lépjünk be az ISPConfigba adminként, majd Lépjünk be a "Rendszer" -> "Additional PHP Versions" almenüjébe.
Itt kattintsunk a (jelenleg üres) lista felett lévő "Add new PHP version" gombra.
Name fül
Ezen a fülön tudjuk beállítani a felvinni kívánt PHP alapvető információit:
- Server: Itt felajánlja a szerverünket, hagyjuk ezen.
- Client: Ha már vittünk fel ügyfelet, akkor azt itt állíthatjuk be, hogy melyik ügyfél (weboldalai) számára legyen elérhető ez a PHP verzió. Itt célszerű üresen hagyni, mert akkor mindenkinek elérhető lesz ez a PHP.
- PHP Name: Ez pedig a PHP neve. Bármit megadhatunk, de célszerű a pontos verziót beállítani, hogy később ne keverjük össze ha már több verziónk lesz.
Lépjünk a következő fülre.
FastCGI Beállítások fül
Ezt a PHP-t FastCGI módban is lesz lehetőségünk használni, így ennek a beállításai jönnek ezen a fülön:
- Path to the PHP FastCGI binary: /opt/php-5.6.40/bin/php-cgi
- Path to the php.ini directory: /opt/php-5.6.40/lib
PHP-FPM Beállítások fül
Itt állíthatjuk be a PHP-FPM dolgait:
- Path to the PHP-FPM init script: php-5.6.40-fpm
- Path to the php.ini directory: /opt/php-5.6.40/lib
- Path to the PHP-FPM pool directory: /opt/php-5.6.40/etc/php-fpm.d
Itt is ügyeljünk, hogy ne maradjanak szóközök.
Végül mentsük le az űrlapot.
És ezzel elkészült az 5.6.40-es választható PHP verziónk a szerveren:
Naplófájlok forgatása (Opcionális)
Érdemes fontolóra venni a naplófájlok forgatását a Logrotate programmal. Amennyiben szeretnénk beállítani, ebben a leírásban találhatjuk meg a módját.
Konklúzió
Sikerült egy hasznos dologgal kiegészítenünk a Debian 9 (Stretch) tökéletes szerverünket. Innentől bármelyik weboldalnál be lehet állítani a PHP 5.6.40-es verziót, amelyiknél szükség van rá.
Egyébként elég életszerű is a dolog, mert a Debian verziók szaladnak, így előbb-utóbb át kell térnünk az újabb verziókra. Viszont ha hozzánk vágnak egy régi weboldalt, ami még a PHP 5-re lett írva, akkor így már nem jövünk zavarba.
- HowtoForge.com - How to install PHP 7.1, 7.2 and 5.6 as PHP-FPM & FastCGI for ISPConfig 3 on Debian 9
- Hogyan telepítsük a PHP 7.1.19-et opcionális módban Debian 8-as tökéletes szerverre
- Hogyan telepíthetünk újabb PHP verziókat Debian 9 (Stretch) LAMP szerverünkre PHP-FPM módban
- Hogyan állíthatunk be egyedi PHP verziókat ISPConfig rendszerű szerverünkön
- Naplófájlok forgatása és tömörítése a Logrotate programmal
- Tökéletes szerver: Debian 9 (stretch) V1.0
- Enciklopédia - PHP
- Enciklopédia - PHP-FPM
- php.net - Releases
Lapozó
- A hozzászóláshoz regisztráció és bejelentkezés szükséges
- 166 megtekintés