Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende ÜberarbeitungLetzte ÜberarbeitungBeide Seiten der Revision |
wiki:centos:mehrere_php_versionen [2019/02/02 22:06] – wikiadmin | wiki:centos:mehrere_php_versionen [2020/04/15 11:33] – [Paketinstallation] wikiadmin |
---|
Je nach dem, welche PHP-Version man möchte, heißen die Pakete jetzt: php<Version>-php-<modul> | Je nach dem, welche PHP-Version man möchte, heißen die Pakete jetzt: php<Version>-php-<modul> |
| |
| ==== PHP 5.4 ==== |
| <file>yum install php54-php php54-php-bcmath php54-php-cli php54-php-common php54-php-devel php54-php-gd php54-php-gmp.x86_64 php54-php-intl.x86_64 php54-php-json.x86_64 php54-php-mbstring.x86_64 php54-php-mcrypt.x86_64 php54-php-mysqlnd.x86_64 php54-php-opcache.x86_64 php54-php-pdo.x86_64 php54-php-process.x86_64 php54-php-tidy.x86_64 php54-php-xml.x86_64 php54-php-pecl-apcu.x86_64 php54-php-pecl-geoip.x86_64 php54-php-pecl-igbinary.x86_64 php54-php-pecl-imagick.x86_64 php54-php-pecl-memcached.x86_64 php54-php-pecl-msgpack.x86_64 php54-php-pecl-zip.x86_64</file> |
| |
| ==== PHP 5.5 ==== |
| |
| <file>yum install php55-php php55-php-bcmath php55-php-cli php55-php-common php55-php-devel php55-php-gd php55-php-gmp.x86_64 php55-php-intl.x86_64 php55-php-json.x86_64 php55-php-mbstring.x86_64 php55-php-mcrypt.x86_64 php55-php-mysqlnd.x86_64 php55-php-opcache.x86_64 php55-php-pdo.x86_64 php55-php-process.x86_64 php55-php-tidy.x86_64 php55-php-xml.x86_64 php55-php-pecl-apcu.x86_64 php55-php-pecl-geoip.x86_64 php55-php-pecl-igbinary.x86_64 php55-php-pecl-imagick.x86_64 php55-php-pecl-memcached.x86_64 php55-php-pecl-msgpack.x86_64 php55-php-pecl-zip.x86_64</file> |
| |
| ==== PHP 5.6 ==== |
| |
| <file>yum install php56-php php56-php-bcmath php56-php-cli php56-php-common php56-php-devel php56-php-gd php56-php-gmp.x86_64 php56-php-intl.x86_64 php56-php-json.x86_64 php56-php-mbstring.x86_64 php56-php-mcrypt.x86_64 php56-php-mysqlnd.x86_64 php56-php-opcache.x86_64 php56-php-pdo.x86_64 php56-php-process.x86_64 php56-php-tidy.x86_64 php56-php-xml.x86_64 php56-php-pecl-apcu.x86_64 php56-php-pecl-geoip.x86_64 php56-php-pecl-igbinary.x86_64 php56-php-pecl-imagick.x86_64 php56-php-pecl-memcached.x86_64 php56-php-pecl-msgpack.x86_64 php56-php-pecl-zip.x86_64</file> |
| |
| <note>__Notiz:__ |
| |
| Ab hier wird nur noch auf die PHP-Versionen 7.x eingegangen. PHP in der Version 5.x sollte nicht mehr verwendet werden, wird der vollständigkeit halber aber aufgelistet</note> |
==== PHP 7.0 ==== | ==== PHP 7.0 ==== |
| |
==== PHP 7.3 ==== | ==== PHP 7.3 ==== |
<file>yum install php73-php php73-php-bcmath php73-php-cli php73-php-common php73-php-devel php73-php-gd php73-php-gmp.x86_64 php73-php-intl.x86_64 php73-php-json.x86_64 php73-php-mbstring.x86_64 php73-php-mcrypt.x86_64 php73-php-mysqlnd.x86_64 php73-php-opcache.x86_64 php73-php-pdo.x86_64 php73-php-process.x86_64 php73-php-tidy.x86_64 php73-php-xml.x86_64 php73-php-pecl-apcu.x86_64 php73-php-pecl-geoip.x86_64 php73-php-pecl-igbinary.x86_64 php73-php-pecl-imagick.x86_64 php73-php-pecl-memcached.x86_64 php73-php-pecl-msgpack.x86_64 php73-php-pecl-zip.x86_64</file> | <file>yum install php73-php php73-php-bcmath php73-php-cli php73-php-common php73-php-devel php73-php-gd php73-php-gmp.x86_64 php73-php-intl.x86_64 php73-php-json.x86_64 php73-php-mbstring.x86_64 php73-php-mcrypt.x86_64 php73-php-mysqlnd.x86_64 php73-php-opcache.x86_64 php73-php-pdo.x86_64 php73-php-process.x86_64 php73-php-tidy.x86_64 php73-php-xml.x86_64 php73-php-pecl-apcu.x86_64 php73-php-pecl-geoip.x86_64 php73-php-pecl-igbinary.x86_64 php73-php-pecl-imagick.x86_64 php73-php-pecl-memcached.x86_64 php73-php-pecl-msgpack.x86_64 php73-php-pecl-zip.x86_64</file> |
| ==== PHP 7.4 ==== |
| <file>yum install $(yum list installed "php??-*" | awk '{print $1}' | egrep -v "Installed|Loaded" | cut -d "-" -f 2- | cut -d "." -f 1 | sort | uniq | egrep -v "php7|runtime" | sed -e 's/^/php74-/')</file> |
| |
===== PHP FastCGI Process Manager ===== | ===== PHP FastCGI Process Manager ===== |
Jetzt kommt der Unterschied zur normalen Installation. | Jetzt kommt der Unterschied zur normalen Installation. |
| |
Wir installieren den PHP FastCGI Process Manager für jede PHP-Version. Dieser wird später vom Webserver aufgerufen und bekommt von Ihm die dynamische Webseite zugeliefert. | Wir installieren den PHP FastCGI Process Manager für jede PHP-Version. Dieser wird später vom Webserver aufgerufen wenn es dynamische Inhalte zu verarbeiten gibt. Der Process Manager verarbeitet diese und gibt alles wieder an den Webserver zurück. |
| |
==== Paketinstallation ==== | ==== Paketinstallation ==== |
| |
<file>yum install php70-php-fpm.x86_64 php71-php-fpm.x86_64 php72-php-fpm.x86_64 php73-php-fpm.x86_64</file> | <file>yum install php70-php-fpm.x86_64 php71-php-fpm.x86_64 php72-php-fpm.x86_64 php73-php-fpm.x86_64 php74-php-fpm.x86_64</file> |
| |
==== Prozesse stoppen ==== | ==== Prozesse stoppen ==== |
==== Pool-Namen umbenennen ==== | ==== Pool-Namen umbenennen ==== |
| |
<file>sed -e 's/\[www\]/\[www-php70\]/' -i /etc/opt/remi/php70/php-fpm.d/www.conf | <file>sed -e 's/\[www\]/\[www-php7.0\]/' -i /etc/opt/remi/php70/php-fpm.d/www.conf |
sed -e 's/\[www\]/\[www-php71\]/' -i /etc/opt/remi/php71/php-fpm.d/www.conf | sed -e 's/\[www\]/\[www-php7.1\]/' -i /etc/opt/remi/php71/php-fpm.d/www.conf |
sed -e 's/\[www\]/\[www-php72\]/' -i /etc/opt/remi/php72/php-fpm.d/www.conf | sed -e 's/\[www\]/\[www-php7.2\]/' -i /etc/opt/remi/php72/php-fpm.d/www.conf |
sed -e 's/\[www\]/\[www-php73\]/' -i /etc/opt/remi/php73/php-fpm.d/www.conf</file> | sed -e 's/\[www\]/\[www-php7.3\]/' -i /etc/opt/remi/php73/php-fpm.d/www.conf</file> |
| |
==== Port's umbenennen ==== | ==== Port's umbenennen ==== |
| |
Es gibt die Option, den pool "on demand" zu starten | Es gibt die Option, den pool "on demand" zu starten |
<note important>__Achtung:__ | |
| |
ondemand ist ein Test für mich. Mal schauen, ob ich dadurch Performance-Einbußen oder -Gewinne habe</note> | <note> |
| __Nachtrag:__ |
| |
| Nach mehreren Test war ondemand 15% - 25% schneller als dynamisch</note> |
| |
<file>sed -e 's/pm = dynamic/;pm = dynamic\npm = ondemand/' -i /etc/opt/remi/php70/php-fpm.d/www.conf | <file>sed -e 's/pm = dynamic/;pm = dynamic\npm = ondemand/' -i /etc/opt/remi/php70/php-fpm.d/www.conf |
All diese Pakete kann man bedenkenlos deinstallieren | All diese Pakete kann man bedenkenlos deinstallieren |
| |
| |
| ====== Quellen ====== |
| |
| * [[https://developers.redhat.com/blog/2017/10/25/php-configuration-tips/|PHP Configuration Tips]] |
| * [[https://wiki.centos.org/HowTos/php7/|Using PHP 7.x on CentOS 7.4]] |
| * [[https://developers.redhat.com/blog/2014/04/08/apache-with-various-php-versions-using-scl/|Apache with various PHP versions, using SCL]] |
| * [[https://blog.remirepo.net/post/2016/04/16/My-PHP-Workstation]] |
| * [[https://www.dotcom-tools.com/website-speed-test.aspx|Website Speed test]] |