Troubleshooting
PHP - Workbench not showing properly
There has been one reported occurance of PHP not being properly installed at customer site, if you experience that the Workbench do not show as expected, please verify that the following items are correctly:
Verify that php is running, e.g.:
ps -e |grep php
If this shows that php is running, check that a php.ini file is loaded:
php --ini
Verify that there are .ini files loaded and that they contain content.
If this is OK, run php -m
and verify the modules below are installed:
- curl
- intl
- json
- ldap
- mbstring
- mysqli
- mysqlnd
- pdo_mysql
- posix
- xml
- zip
The following error appears due to the php-intl
package not being installed.
Class "Locale" not found in file: /home/fossid/webapp/vendor/avadim/fast-excel-writer/src/FastExcelWriter/Excel.php, at line 295
On Debian and/or Ubuntu systems a php upgrade might break the configuration. During upgrade multiple versions of php might be installed. Be careful on the version running and the ones installed and remove the one that it’s not running and/or configured. For example, the following scenario:
- the system has php-8.2 configured and fossid-workbench-23.3.x
- upgrade to fossid-workbench-24.1.x also updates the php-8.3, but this version of php it is not configured.
-
some php modules might be missing due to the way dependencies are handled in Debian/Ubuntu systems, e.g. php-8.3 will be installed, fossid-workbench-24.1 requires php-module-v1, and it will be installed for php-8.3 and not for php-8.2. A proposed fix is to remove a php version, either php-8.2 or php-8.3.
sudo apt remove php8.2\*
MySQL 8 complains about using mysql_native_passwords
In some instances, upgrading to mySQL 8 from a previous version floods the logs with the following message:
Plugin mysql_native_password reported: ''mysql_native_password' is deprecated and will be removed in a future release. Please use caching_sha2_password instead'
in the mysql console check the users that use the mysql_native_password
plugin:
mysql> select User, plugin from mysql.user;
+------------------+-----------------------+
| User | plugin |
+------------------+-----------------------+
| fossid | mysql_native_password |
| root | mysql_native_password |
| mysql.infoschema | mysql_native_password |
| mysql.session | mysql_native_password |
| mysql.sys | mysql_native_password |
| root | mysql_native_password |
+------------------+-----------------------+
6 rows in set (0.01 sec)
To remove this message the users should use the new caching_sha2_password
plugin:
mysql> ALTER USER 'fossid'@'%' IDENTIFIED WITH caching_sha2_password BY 'MY_NEW_STRONG_PASSWORD';
Timeout related issues
Setting low values for timeout parameters in Nginx, PHP-FPM, and PHP configurations can lead to various issues, particularly when dealing with long-running processes or large file uploads. For such we recomend to adjust the next values:
Nginx configuration (nginx.conf
):
send_timeout 1200;
fastcgi_read_timeout 1200;
fastcgi_send_timeout 1200;
fastcgi_connect_timeout 1200;
PHP-FPM configuration (www.conf
):
request_terminate_timeout = 1200
PHP configuration (php.ini
):
max_execution_time = 1200
Then after these changes proceed to restart or reload the services:
sudo systemctl restart php-fpm
sudo systemctl restart nginx