Hi Till, I manage Drupal via composer, not drush, and I got issues with some contrib modules if I do not have PHP 8.1. ATM I rollback to PHP 7.4.x as default PHP on Debian 11, after that my website got WSOD, so I run: Code: composer update and I got some modules downgraded due to PHP < 8.1, my website come back online but some features don't works due to "old" modules (feature they do not have in previouse releases), if I try to force upgrade of that modules with: Code: composer require 'drupal/contrib_module:^x.x' I got an error and a message tell me I can't install that release due incompatibilities with PHP 7.4.33 (actual default PHP), thats why I ask if there is a way to change "default" PHP also in some specific path/user's home like I can do with PHP for specific websites. Best regards, Alessandro
@Taleman explained in post #18 how to run php scripts like composer under a different PHP version. But here a more detailed answer and also alternatives: https://stackoverflow.com/questions/32750250/tell-composer-to-use-different-php-version
Solved! Code: web1@webserver-arc:~$ composer config platform.php 8.1.17 web1@webserver-arc:~$ composer update Loading composer repositories with package information Info from https://repo.packagist.org: #StandWithUkraine Updating dependencies Lock file operations: 0 installs, 5 updates, 0 removals - Upgrading fastglass/sendgrid (2.0.5 => 2.0.6) - Upgrading symfony/css-selector (v5.4.21 => v6.2.7) - Upgrading symfony/filesystem (v5.4.21 => v6.2.7) - Upgrading symfony/finder (v5.4.21 => v6.2.7) - Upgrading symfony/string (v5.4.21 => v6.2.7) Writing lock file Installing dependencies from lock file (including require-dev) Package operations: 0 installs, 5 updates, 0 removals - Upgrading symfony/finder (v5.4.21 => v6.2.7): Extracting archive - Upgrading symfony/filesystem (v5.4.21 => v6.2.7): Extracting archive - Upgrading symfony/string (v5.4.21 => v6.2.7): Extracting archive - Upgrading fastglass/sendgrid (2.0.5 => 2.0.6): Extracting archive - Upgrading symfony/css-selector (v5.4.21 => v6.2.7): Extracting archive Package doctrine/reflection is abandoned, you should avoid using it. Use roave/better-reflection instead. Package symfony/debug is abandoned, you should avoid using it. Use symfony/error-handler instead. Generating autoload files 57 packages you are using are looking for funding. Use the `composer fund` command to find out more! No security vulnerability advisories found web1@webserver-arc:~$ php -v PHP 7.4.33 (cli) (built: Feb 14 2023 18:01:29) ( NTS ) Copyright (c) The PHP Group Zend Engine v3.4.0, Copyright (c) Zend Technologies with Zend OPcache v7.4.33, Copyright (c), by Zend Technologies web1@webserver-arc:~$ Now it seems to work! Thanks Till!
I have similar issue related to task undone The following changes are not yet populated to all servers: Update DNS zone: 356 Update email user: 59 Update server settings: 12 Update DNS record: 404 Update website settings: 26 Update FTP user: 16 Update cron job: 2 Update database user: 2 Update database: 29 Update email domain: 10 Update email address: 17 Update spam filter settings: 29 datalog_status_u_spamfilter_wblist: 3 datalog_status_u_mail_relay_recipient: 1 Delete DNS record: 1 Create DNS record: 1 ##### SERVER ##### IP-address (as per hostname): ***.***.***.*** [WARN] could not determine server's ip address by ifconfig [INFO] OS version is Ubuntu 20.04.6 LTS [INFO] uptime: 02:40:39 up 11:43, 2 users, load average: 0.30, 0.15, 0.10 [INFO] memory: total used free shared buff/cache available Mem: 4.8Gi 2.4Gi 163Mi 228Mi 2.2Gi 1.9Gi Swap: 4.0Gi 519Mi 3.5Gi [INFO] ISPConfig is installed. ##### ISPCONFIG ##### ISPConfig version is 3.2.9p1 ##### VERSION CHECK ##### [INFO] php (cli) version is 7.4.33 [INFO] php-cgi (used for cgi php in default vhost!) is version 8.2.4 ##### PORT CHECK ##### [WARN] Port 8081 (ISPConfig Apps) seems NOT to be listening [WARN] Port 22 (SSH server) seems NOT to be listening ##### MAIL SERVER CHECK ##### ##### RUNNING SERVER PROCESSES ##### [INFO] I found the following web server(s): Apache 2 (PID 1764) [INFO] I found the following mail server(s): Postfix (PID 2006) [INFO] I found the following pop3 server(s): Dovecot (PID 1543) [INFO] I found the following imap server(s): Dovecot (PID 1543) [INFO] I found the following ftp server(s): PureFTP (PID 3496) ##### LISTENING PORTS ##### (only () Local (Address) ***.***.***.***:41140 (1605/zerotier-one) ***.***.***.***:41140 (1605/zerotier-one) ***.***.***.***:41140 (1605/zerotier-one) ***.***.***.***:53 (157016/named) ***.***.***.***:53 (157016/named) ***.***.***.***:53 (157016/named) ***.***.***.***:53 (157016/named) [localhost]:53 (157016/named) [anywhere]:21 (3496/pure-ftpd) ***.***.***.***:53 (973/systemd-resolve) [localhost]:9016 (175274/php-fpm [localhost]:9017 (175274/php-fpm [localhost]:953 (157016/named) [anywhere]:25 (2006/master) [anywhere]:2812 (1146/monit) [anywhere]:993 (1543/dovecot) [anywhere]:10050 (1602/zabbix_agentd) [anywhere]:995 (1543/dovecot) [localhost]:11332 (1586/rspamd [localhost]:11333 (1586/rspamd [localhost]:9062 (175274/php-fpm [localhost]:11334 (1586/rspamd [localhost]:10023 (1254/postgrey) [localhost]:10025 (2006/master) ***.***.***.***:9993 (1605/zerotier-one) ***.***.***.***:9993 (1605/zerotier-one) ***.***.***.***:9993 (1605/zerotier-one) [localhost]:9993 (1605/zerotier-one) ***.***.***.***:29994 (1605/zerotier-one) ***.***.***.***:29994 (1605/zerotier-one) ***.***.***.***:29994 (1605/zerotier-one) [localhost]:10027 (2006/master) [anywhere]:587 (2006/master) [localhost]:11211 (1547/memcached) [anywhere]:110 (1543/dovecot) [anywhere]:143 (1543/dovecot) [anywhere]:111 (1/init) [anywhere]:22000 (1404/sshd [anywhere]:465 (2006/master) [localhost]:62354 (1545/fusioninventor) [localhost]:9011 (175274/php-fpm 2a02:2a00:5600:30:41140 (1605/zerotier-one) *:*:*:*::*90d1:d2ff:fea8:53 (157016/named) *:*:*:*::**:*:*:*::*53 (157016/named) *:*:*:*::**:*:*:*::*53 (157016/named) *:*:*:*::**:*:*:*::*53 (157016/named) *:*:*:*::*:53 (157016/named) *:*:*:*::*:53 (157016/named) *:*:*:*::*:21 (3496/pure-ftpd) *:*:*:*::*:4949 (1699/perl) *:*:*:*::*:25 (2006/master) *:*:*:*::*:953 (157016/named) *:*:*:*::*:443 (1764/apache2) *:*:*:*::*:6556 (1946/xinetd) *:*:*:*::*:2812 (1146/monit) *:*:*:*::*:993 (1543/dovecot) [localhost]0050 (1602/zabbix_agentd) *:*:*:*::*:995 (1543/dovecot) *:*:*:*::*:33060 (210937/mysqld) *:*:*:*::*:11332 (1586/rspamd *:*:*:*::*:11333 (1586/rspamd *:*:*:*::*:11334 (1586/rspamd 2a02:2a00:5600:301:9993 (1605/zerotier-one) *:*:*:*::*:9993 (1605/zerotier-one) *:*:*:*::*:3306 (210937/mysqld) 2a02:2a00:5600:30:29994 (1605/zerotier-one) *:*:*:*::*:587 (2006/master) [localhost]10 (1543/dovecot) [localhost]43 (1543/dovecot) [localhost]11 (1/init) *:*:*:*::*:8080 (1764/apache2) *:*:*:*::*:80 (1764/apache2) *:*:*:*::*:22000 (1404/sshd *:*:*:*::*:465 (2006/master) ##### IPTABLES ##### Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination ##### LET'S ENCRYPT ##### Certbot is installed in /usr/bin/letsencrypt Distributor ID: Ubuntu Description: Ubuntu 20.04.6 LTS Release: 20.04 Codename: focal PHP 7.4.33 (cli) (built: Feb 14 2023 18:31:23) ( NTS ) Copyright (c) The PHP Group Zend Engine v3.4.0, Copyright (c) Zend Technologies with the ionCube PHP Loader v10.4.0 (beta2), Copyright (c) 2002-2020, by ionCube Ltd. with Zend OPcache v7.4.33, Copyright (c), by Zend Technologies There are 10 choices for the alternative php (providing /usr/bin/php). Selection Path Priority Status ------------------------------------------------------------ 0 /usr/bin/php8.2 82 auto mode 1 /usr/bin/hhvm 40 manual mode 2 /usr/bin/php5.6 56 manual mode 3 /usr/bin/php7.0 70 manual mode 4 /usr/bin/php7.1 71 manual mode 5 /usr/bin/php7.2 72 manual mode 6 /usr/bin/php7.3 73 manual mode * 7 /usr/bin/php7.4 74 manual mode 8 /usr/bin/php8.0 80 manual mode 9 /usr/bin/php8.1 81 manual mode 10 /usr/bin/php8.2 82 manual mode I was use to isconfig_update.sh --force I set logs into debug mode but if i run the crontab -e and comment the first line and try to run it manual i get this errors php /usr/local/ispconfig/server/server.php 31.03.2023-03:08 - WARNING - There is already a lockfile set, but no process running with this pid (271943). Continuing. 31.03.2023-03:08 - DEBUG [plugins.inc:155] - Calling function 'check_phpini_changes' from plugin 'webserver_plugin' raised by action 'server_plugins_loaded'. 31.03.2023-03:08 - DEBUG [webserver plugin.inc:95] - Info: php.ini change checking not enabled or not in this minute: 10 31.03.2023-03:08 - DEBUG [server:177] - Found 1289 changes, starting update process. 31.03.2023-03:08 - DEBUG [plugins.inc:118] - Calling function 'server_ip' from plugin 'apache2_plugin' raised by event 'server_update'. 31.03.2023-03:08 - DEBUG [system.inc:2399] - safe_exec cmd: which 'apache2ctl' 2> /dev/null - return code: 0 31.03.2023-03:08 - DEBUG [apache2 plugin.inc:2468] - Writing the conf file: /etc/apache2/sites-available/ispconfig.conf 31.03.2023-03:08 - DEBUG [plugins.inc:118] - Calling function 'update' from plugin 'apps_vhost_plugin' raised by event 'server_update'. 31.03.2023-03:08 - DEBUG [system.inc:2399] - safe_exec cmd: which 'apache2ctl' 2> /dev/null - return code: 0 31.03.2023-03:08 - DEBUG [plugins.inc:118] - Calling function 'update' from plugin 'network_settings_plugin' raised by event 'server_update'. 31.03.2023-03:08 - DEBUG [network settings plugin.inc:249] - Network configuration disabled in server settings. 31.03.2023-03:08 - DEBUG [plugins.inc:118] - Calling function 'update' from plugin 'postfix_server_plugin' raised by event 'server_update'. 31.03.2023-03:08 - DEBUG [system.inc:2399] - safe_exec cmd: postconf -e 'smtpd_client_restrictions = check_client_access proxy:mysql:/etc/postfix/mysql-virtual_client.cf, permit_inet_interfaces, permit_mynetworks, permit_sasl_authenticated, reject_unauth_pipelining, permit' - return code: 0 31.03.2023-03:08 - DEBUG [system.inc:2399] - safe_exec cmd: postconf -e 'smtpd_helo_restrictions = permit_mynetworks, check_helo_access regexp:/etc/postfix/helo_access, permit_sasl_authenticated, reject_invalid_helo_hostname, reject_non_fqdn_helo_hostname, check_helo_access regexp:/etc/postfix/blacklist_helo, reject_unknown_helo_hostname, permit' - return code: 0 31.03.2023-03:08 - DEBUG [system.inc:2399] - safe_exec cmd: which 'dovecot' 2> /dev/null - return code: 0 31.03.2023-03:08 - DEBUG [plugins.inc:118] - Calling function 'server_update' from plugin 'rspamd_plugin' raised by event 'server_update'. PHP Fatal error: Uncaught mysqli_sql_exception: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '.server_ip WHERE `server_id` = 1' at line 1 in /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php:302 Stack trace: #0 /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php(302): mysqli_query() #1 /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php(339): db->_query() #2 /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php(395): db->query() #3 /usr/local/ispconfig/server/plugins-available/rspamd_plugin.inc.php(511): db->queryAllRecords() #4 /usr/local/ispconfig/server/lib/classes/plugins.inc.php(120): rspamd_plugin->server_update() #5 /usr/local/ispconfig/server/mods-available/server_module.inc.php(98): plugins->raiseEvent() #6 /usr/local/ispconfig/server/lib/classes/modules.inc.php(302): server_module->process() #7 /usr/local/ispconfig/server/lib/classes/modules.inc.php(235): modules->raiseTableHook() #8 /usr/local/ispconfig/serv in /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php on line 302 and from here i do not know how to dig to fix it.
Code: [INFO] php (cli) version is 7.4.33 [INFO] php-cgi (used for cgi php in default vhost!) is version 8.2.4 ISPConfig supports only the default PHP version that comes with the OS. Changing PHP version usually breaks ISPConfig. This is explained in the Read before posting you already have read. Also how to fix.
Thank You for that point but... I check and move it to 7.4 update-alternatives --config php-cgi There are 3 choices for the alternative php-cgi (providing /usr/bin/php-cgi). Selection Path Priority Status ------------------------------------------------------------ * 0 /usr/bin/php-cgi8.2 82 auto mode 1 /usr/bin/php-cgi7.4 74 manual mode 2 /usr/bin/php-cgi8.0 80 manual mode 3 /usr/bin/php-cgi8.2 82 manual mode Press <enter> to keep the current choice[*], or type selection number: 1 update-alternatives: using /usr/bin/php-cgi7.4 to provide /usr/bin/php-cgi (php-cgi) in manual mode ./server.sh 31.03.2023-14:20 - WARNING - There is already a lockfile set, but no process running with this pid (597396). Continuing. 31.03.2023-14:20 - DEBUG [plugins.inc:155] - Calling function 'check_phpini_changes' from plugin 'webserver_plugin' raised by action 'server_plugins_loaded'. 31.03.2023-14:20 - DEBUG [system.inc:2399] - safe_exec cmd: grep ^opcache.validate_root '/etc/php/7.4/apache2/php.ini' - return code: 0 31.03.2023-14:20 - DEBUG [system.inc:2399] - safe_exec cmd: grep ^opcache.validate_root '/etc/php/7.4/fpm/php.ini' - return code: 0 31.03.2023-14:20 - DEBUG [system.inc:2399] - safe_exec cmd: grep ^opcache.validate_root '/etc/php/7.4/cgi/php.ini' - return code: 0 31.03.2023-14:20 - DEBUG [server:177] - Found 1300 changes, starting update process. 31.03.2023-14:20 - DEBUG [plugins.inc:118] - Calling function 'server_ip' from plugin 'apache2_plugin' raised by event 'server_update'. 31.03.2023-14:20 - DEBUG [system.inc:2399] - safe_exec cmd: which 'apache2ctl' 2> /dev/null - return code: 0 31.03.2023-14:20 - DEBUG [apache2 plugin.inc:2468] - Writing the conf file: /etc/apache2/sites-available/ispconfig.conf 31.03.2023-14:20 - DEBUG [plugins.inc:118] - Calling function 'update' from plugin 'apps_vhost_plugin' raised by event 'server_update'. 31.03.2023-14:20 - DEBUG [system.inc:2399] - safe_exec cmd: which 'apache2ctl' 2> /dev/null - return code: 0 31.03.2023-14:20 - DEBUG [plugins.inc:118] - Calling function 'update' from plugin 'network_settings_plugin' raised by event 'server_update'. 31.03.2023-14:20 - DEBUG [network settings plugin.inc:249] - Network configuration disabled in server settings. 31.03.2023-14:20 - DEBUG [plugins.inc:118] - Calling function 'update' from plugin 'postfix_server_plugin' raised by event 'server_update'. 31.03.2023-14:20 - DEBUG [system.inc:2399] - safe_exec cmd: postconf -e 'smtpd_client_restrictions = check_client_access proxy:mysql:/etc/postfix/mysql-virtual_client.cf, permit_inet_interfaces, permit_mynetworks, permit_sasl_authenticated, reject_unauth_pipelining, permit' - return code: 0 31.03.2023-14:20 - DEBUG [system.inc:2399] - safe_exec cmd: postconf -e 'smtpd_helo_restrictions = permit_mynetworks, check_helo_access regexp:/etc/postfix/helo_access, permit_sasl_authenticated, reject_invalid_helo_hostname, reject_non_fqdn_helo_hostname, check_helo_access regexp:/etc/postfix/blacklist_helo, reject_unknown_helo_hostname, permit' - return code: 0 31.03.2023-14:20 - DEBUG [system.inc:2399] - safe_exec cmd: which 'dovecot' 2> /dev/null - return code: 0 31.03.2023-14:20 - DEBUG [plugins.inc:118] - Calling function 'server_update' from plugin 'rspamd_plugin' raised by event 'server_update'. PHP Fatal error: Uncaught mysqli_sql_exception: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '.server_ip WHERE `server_id` = 1' at line 1 in /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php:302 Stack trace: #0 /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php(302): mysqli_query() #1 /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php(339): db->_query() #2 /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php(395): db->query() #3 /usr/local/ispconfig/server/plugins-available/rspamd_plugin.inc.php(511): db->queryAllRecords() #4 /usr/local/ispconfig/server/lib/classes/plugins.inc.php(120): rspamd_plugin->server_update() #5 /usr/local/ispconfig/server/mods-available/server_module.inc.php(98): plugins->raiseEvent() #6 /usr/local/ispconfig/server/lib/classes/modules.inc.php(302): server_module->process() #7 /usr/local/ispconfig/server/lib/classes/modules.inc.php(235): modules->raiseTableHook() #8 /usr/local/ispconfig/serv in /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php on line 302 update-alternatives --config php There are 10 choices for the alternative php (providing /usr/bin/php). Selection Path Priority Status ------------------------------------------------------------ 0 /usr/bin/php8.2 82 auto mode 1 /usr/bin/hhvm 40 manual mode 2 /usr/bin/php5.6 56 manual mode 3 /usr/bin/php7.0 70 manual mode 4 /usr/bin/php7.1 71 manual mode 5 /usr/bin/php7.2 72 manual mode 6 /usr/bin/php7.3 73 manual mode * 7 /usr/bin/php7.4 74 manual mode 8 /usr/bin/php8.0 80 manual mode 9 /usr/bin/php8.1 81 manual mode 10 /usr/bin/php8.2 82 manual mode Press <enter> to keep the current choice[*], or type selection number: update-alternatives --config php-cgi There are 3 choices for the alternative php-cgi (providing /usr/bin/php-cgi). Selection Path Priority Status ------------------------------------------------------------ 0 /usr/bin/php-cgi8.2 82 auto mode * 1 /usr/bin/php-cgi7.4 74 manual mode 2 /usr/bin/php-cgi8.0 80 manual mode 3 /usr/bin/php-cgi8.2 82 manual mode And error is the same
Do you use the MariaDB version that ships with Ubuntu 20.04, or did you install a newer MariaDB version from MariaDB repository?
What i see wrong on this is that . (dot) in front of that query or missing select * from '.server_ip WHERE `server_id` = 1'
A dot is generally fine as it is the separator between the database name and the table name and the error message does not show the full query. If you look at the code: Code: $ips = $app->db->queryAllRecords('SELECT `ip_address`, `ip_type` FROM ?? WHERE `server_id` = ?', $conf['mysql']['database'].'.server_ip', $conf['server_id']); Then it might be that you edited /usr/local/ispconfig/server/lib/config.inc.php and removed the database name from the variable $conf['mysql']['database'] in the config file.
Ok I do not have any line with that name on it $conf['mysql']['database'] Where have to be and what value to be set I can upload it here if is need it and the line who contain mysql is $conf['db_type'] = 'mysql'; $conf['dbmaster_type'] = 'mysql';
grep -i database lib/config.inc.php //** Database $conf['db_database'] = 'dbispconfig'; define('DB_DATABASE',$conf['db_database']); //** Database settings for the master DB. This setting is only used in multiserver setups $conf['dbmaster_database'] = 'dbispconfig'; I was on 18.04.6 LTS (Bionic Beaver) and move to 20 some time ago and did not got any errors i was looking on logs for how long is this errors present and need to look for backup logs coz in the os the last 7 days logs all present same error
Please try to change line 511 in the file /usr/local/ispconfig/server/plugins-available/rspamd_plugin.inc.php to: Code: $ips = $app->db->queryAllRecords('SELECT `ip_address`, `ip_type` FROM ?? WHERE `server_id` = ?', $conf['db_database'].'.server_ip', $conf['server_id']); Someone might have copied that code from an other part of the project and did not adjust the variable correctly. I just wonder why no one else had this issue yet.
I'll add an issue report at git.ispconfig.org, so we can get it fixed for all users in the next version.