PhpPaket: Unterschied zwischen den Versionen

Aus Info-Theke
Zur Navigation springen Zur Suche springen
 
(3 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 9: Zeile 9:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
PHP_VERS=8.2
PHP_VERS=8.2
apt install php$PHP_VERS php$PHP_VERS-cli php$PHP_VERS-common php$PHP_VERS-curl php$PHP_VERS-fpm \
apt install php$PHP_VERS php$PHP_VERS-{cli,common,curl,fpm,gd,igbinary,imagick,imap,intl,mbstring,memcached,msgpack,mysql,opcache,phpdbg,readline,redis,xdebug,xml,zip}
  php$PHP_VERS-gd php$PHP_VERS-igbinary php$PHP_VERS-imagick php$PHP_VERS-intl \
  php$PHP_VERS-mbstring php$PHP_VERS-memcached php$PHP_VERS-msgpack php$PHP_VERS-mysql \
  php$PHP_VERS-opcache php$PHP_VERS-pgsql php$PHP_VERS-phpdbg php$PHP_VERS-readline \
  php$PHP_VERS-redis php$PHP_VERS-xdebug php$PHP_VERS-xml php$PHP_VERS-zip  
</syntaxhighlight>
</syntaxhighlight>
<pre>add-apt-repository ppa:ondrej/php
<pre>add-apt-repository ppa:ondrej/php
Zeile 73: Zeile 69:
* pool.d/www.conf
* pool.d/www.conf
<pre>
<pre>
pm.max_children=50
pm.max_children = 30
pm.start_servers=20
pm.min_spare_servers = 20
pm.max_spare_servers = 30
</pre>
</pre>
* in NGINX:
* in NGINX:
Zeile 80: Zeile 79:
== Konfiguration ausgeben ==
== Konfiguration ausgeben ==
<pre>php -i
<pre>php -i
php7.4 -i | egrep "^(memory_limit|upload_max_filesize|max_file_uploads|post_max_size|max_execution_time|max_input_time|session.save_handler"
</pre>
</pre>

Aktuelle Version vom 30. September 2024, 13:14 Uhr


Links[Bearbeiten]

Installation[Bearbeiten]

PHP_VERS=8.2
apt install php$PHP_VERS php$PHP_VERS-{cli,common,curl,fpm,gd,igbinary,imagick,imap,intl,mbstring,memcached,msgpack,mysql,opcache,phpdbg,readline,redis,xdebug,xml,zip}
add-apt-repository ppa:ondrej/php
apt-get install php5.6-cli php5.6-common php5.6-curl php5.6-fpm php5.6-gd php5.6-imap \
   php5.6-intl php5.6-json php5.6-mbstring php5.6-mcrypt php5.6-mysql php5.6-opcache \
   php5.6-readline php5.6-sqlite3 php5.6-xml php5.6-zip 

Repository einrichten[Bearbeiten]

sudo apt install -y lsb-release ca-certificates apt-transport-https software-properties-common gnupg2
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/sury-php.list
curl -fsSL  https://packages.sury.org/php/apt.gpg| sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/sury-keyring.gpg
sudo apt update 
sudo apt install php8.1

Error-Logging[Bearbeiten]

  • php.ini:
    • error_log = /var/log/php/php.log
    • log_errors = on
  • im Programm:
    • error_reporting(E_ALL);
    • error_log("=== start");

Wichtige Konfiguration in php.ini[Bearbeiten]

  • PHP_VERS=8.2
  • /etc/php/$PHP_VERS/fpm/php.ini
memory_limit = 2048M
upload_max_filesize = 512M
max_file_uploads = 100
post_max_size = 512M
max_execution_time = 600
max_input_time = 600
default_socket_timeout = 600
[Session]
#session.save_handler = files
session.save_handler = redis
session.save_path = "tcp://127.0.0.1:6379"

[opcache]
opcache.enable=1
opcache.memory_consumption=1024
opcache.interned_strings_buffer=512

[XDebug]
; Ist normalerweise in xdebug-spezifischer Konfiguration, z.B. mods.d/20-xdebug
;zend_extension="/usr/lib/php/20160303/xdebug.so"
xdebug.remote_port=9004
xdebug.remote_enable=On
xdebug.remote_host=192.168.100.100
; Alternativ: remote-Adresse selber ermitteln:
;xdebug.remote_connect_back=On
xdebug.remote_log=/var/log/php/xdebug.log
xdebug.remote_autostart=1
  • pool.d/www.conf
pm.max_children = 30
pm.start_servers=20
pm.min_spare_servers = 20
pm.max_spare_servers = 30
  • in NGINX:
    • fastcgi_read_timeout 3600s;

Konfiguration ausgeben[Bearbeiten]

php -i
php7.4 -i | egrep "^(memory_limit|upload_max_filesize|max_file_uploads|post_max_size|max_execution_time|max_input_time|session.save_handler"