Technical FAQ for ConfTool
Please check the following FAQ before contacting us.
Users get logged out after a few minutes from ConfTool
This problem is usually caused by a session timeout that is too short in the PHP configuration of your server. The standard setting in PHP is only 1440 seconds = 24 minutes – usually much too short to write a review. We recommend setting it to at least two hours (7200 seconds); better are probably 5 hours (18000 seconds).
To fix the setting, please check the following:
- In the file php.ini, the parameter session.gc_maxlifetime should be at least 7200: (session.gc_maxlifetime = 7200)
- Remember to restart Apache after changing these parameters.
- Check if a cronjob is maybe deleting the session data from the temporary directory. The parameter session.save_path lists the location of the temporary session file.
- Please note: Changing this setting in your .htaccess file or in settings.php of ConfTool [ini_set("session.gc_maxlifetime", 7200);] has usually no effect.
- Also verify if you have a link somewhere on your web pages to ConfTool that includes a session URL. Example:
www.example.com/conftool/index.php?page=register&CTSID=ill8c08vuKklUegQZ8KWxyz9q
please fix this to:
www.example.com/conftool/index.php?page=register
We have problems sending e-mails with ConfTool
- Please double-check your SMTP server settings in etc/conftool.conf.php.
- Look in the Apache error log to see if ConfTool submits any error messages.
- Try using another mail client on the same computer to test if the mail server can be connected.
- Please check if you have a firewall running on the computer that blocks the SMTP connections.
- Check if there is a virus scanner on that computer that blocks outgoing SMTP connections for the httpd.
- Go to conftool/lib/mail.lib.php and comment out the lines with the error output messages in order to debug your mail settings.
- If you are using a Linux server, there are many open source mail servers available such as Postfix. If you are using Windows, you can also install a local mail server easily using MailEnable.
Using a Google (Gmail) account as SMTP server: Please note that Google disabled simple username / password authentication (“less secure apps”) in 2022. You now have to create an App Password – which requires two-factor authentication (2FA) to be enabled on the account – or use OAuth2. If you get an error such as PHP Warning: fsockopen(): SSL operation failed with code 1 when establishing the connection, try port 465 (implicit SSL) instead of 587 (STARTTLS).
We cannot register new users with ConfTool
If any e-mail address is rejected when you try to register new users, please:
- Check if the DNS server of your host works correctly (using the commands nslookup or host), or
- Disable the DNS test in ConfTool in the configuration file etc/conftool.conf.php.
Uploading files does not work, we just get an empty document or an error message
- Have a look at the Apache error log. Very often the according hints can be found there.
- Use www.yoursite.org/conftool/info.php to check if your PHP settings are OK for file uploads. All three values upload_max_filesize, post_max_size and memory_limit have to be bigger than the required file size (e.g. 10M).
- Usually this is not critical, but for some systems max_execution_time has to be high enough (remember, these are seconds!). For IIS the CGI timeout has to be as high, otherwise the server will cancel the transfer.
- Go to php.ini and check if the following parameters are set:
- upload_tmp_dir = "/tmp/" (or something like C:\temp\ for Windows).
- Check if the above directory is writable for your web server and if the uploaded file appears in the directory after you have uploaded the file.
- file_uploads = On is required to allow uploads at all.
- If you find messages like Requested content-length of XXXXX is larger than the configured limit of 524288 in your Apache error log, you have to increase the value of LimitRequestBody. You usually find that parameter in /etc/httpd/conf.d/php.conf. Change it to a bigger value like 16777216.
- Restart the httpd after making any changes to the Apache or PHP configuration files!
Character encoding problems
The current versions of ConfTool Standard and ConfTool Pro use UTF-8 encoding. The character encoding of ConfTool is set in the file etc/conftool.conf.php in $ctconf['charset'].
Use utf8mb4, not utf8: In current MySQL / MariaDB versions, the character set named utf8 is only an alias for the limited 3-byte utf8mb3, which cannot store the full range of Unicode characters (for example emoji or some CJK characters). Always use utf8mb4 with a matching collation such as utf8mb4_unicode_ci (or utf8mb4_0900_ai_ci on MySQL 8) to avoid corrupted or rejected characters.
General hints regarding the character encoding in mysql:
Make sure your MySQL database uses the same encoding as your ConfTool installation. For UTF-8 you can, for instance, use the following commands after the CREATE DATABASE command to set the correct encoding:
SET NAMES utf8mb4;
SET COLLATION_CONNECTION = utf8mb4_unicode_ci;
ALTER DATABASE DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;If you forgot to set the correct encoding for your database, reinstall or update it:
ALTER DATABASE DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
or for single tables using:
ALTER TABLE XXXXX CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
(the collation defines the order used for indexes).
- Make sure that the language text files are in the same character encoding as your ConfTool installation and database. Use, for instance, Notepad++ to edit / convert them.
If you import the database, use the --default-character-set switch, e.g.:
mysql -u user -p --default-character-set=utf8mb4 database < data.sql
- Other switches to be used in the MySQL console:
- SET NAMES utf8mb4
- SET CHARACTER SET utf8mb4
- SET character_set_results = NULL
We would like to use HTTPS / a secure connection. What do we have to do?
HTTPS is nowadays effectively required – modern browsers warn visitors about unencrypted connections, and login credentials should never be transmitted in clear text. We therefore strongly recommend running ConfTool over HTTPS only.
ConfTool supports HTTPS, but it is the web server that creates the secure connection. You therefore have to configure your server accordingly and obtain a certificate. You will find more information on this topic on the internet. If you need a free, “official” certificate, see Let’s Encrypt:
To enforce the use of HTTPS in ConfTool, you just have to adapt the variable $ctconf['web/baseurl'] in etc/conftool.conf.php. That’s it.