Cannot update to 1.6.0 - Stuck at language selection

Hello,

I have a problem with the InvoicePlane 1.6.0 Update and hope you can help me out:
I am running on a Debian 12 Server with kernel 6.1.0-12-amd64,
apache2 6.1.0-12-amd64 and php 8.1.23 (fastCGI).
Both of my InvoicePlane instances are currently running on version 1.5.11.
I followed the instructions given here, but whenever I try to finish the setup/update process, I get stuck on the first screen (the language selection).
After I’ve chosen my language, I click on and nothing happens, the language selection page just loads again, no matter how often I click on the button.


Does anyone know how I can get around this?

My ipconfig.php

# <?php exit('No direct script access allowed'); ?>
# InvoicePlane Configuration File

### START HERE
# Set your URL without trailing slash here, e.g. http://your-domain.com
# If you use a subdomain, use http://subdomain.your-domain.com
# If you use a subfolder, use http://your-domain.com/subfolder
IP_URL=PRIVATE

# Having problems? Enable debug by changing the value to 'true' to enable advanced logging
ENABLE_DEBUG=false

# Set this setting to 'true' if you want to disable the setup for security purposes
DISABLE_SETUP=false

# To remove index.php from the URL, set this setting to 'true'.
# Please notice the additional instructions in the htaccess file!
REMOVE_INDEXPHP=false

# These database settings are set during the initial setup
DB_HOSTNAME=localhost
DB_USERNAME=PRIVATE
DB_PASSWORD=PRIVATE
DB_DATABASE=ivplane
DB_PORT=3306

# If you want to be logged out after closing your browser window, set this setting to 0 (ZERO).
# The number represents the amount of minutes after that IP will automatically log out users,
# the default is 10 days.
SESS_EXPIRATION=864000

# Enable the deletion of invoices
ENABLE_INVOICE_DELETION=false

# Disable the read-only mode for invoices
DISABLE_READ_ONLY=false

##
## DO NOT CHANGE ANY CONFIGURATION VALUES BELOW THIS LINE!
## =======================================================
##

# This key is automatically set after the first setup. Do not change it manually!
ENCRYPTION_KEY=PRIVATE
ENCRYPTION_CIPHER=AES-256

# Set to true after the initial setup
SETUP_COMPLETED=true

My apache2 vhost:

<VirtualHost *:80>
        ServerName domain.com
        ServerAlias domain.com

        Redirect / https://domain.com/

        ErrorLog /home/user/log/apache2/domain_com.error.log
        CustomLog /home/user/log/apache2/domain_com.access.log common
</VirtualHost>

<VirtualHost *:443>
        ServerName domain.com
        ServerAlias domain.com


        DocumentRoot /home/user/www/htdocs/ivplane
        <Directory /home/user/www/htdocs/ivplane>
                Options -Indexes +FollowSymLinks +MultiViews
                AllowOverride All
                Require all granted
        </Directory>

        <FilesMatch \.php$>
                SetHandler "proxy:unix:/var/run/php/php8.1-fpm.sock|fcgi://localhost/"
        </FilesMatch>

        SSLEngine On
        SSLCertificateFile /etc/letsencrypt/live/domain.com/fullchain.pem
        SSLCertificateKeyFile /etc/letsencrypt/live/domain.com/privkey.pem

        ErrorLog /home/user/log/apache2/domain_com.ssl-error.log
        CustomLog /home/user/log/apache2/domain_com.ssl-access.log common

        Include /etc/letsencrypt/options-ssl-apache.conf
</VirtualHost>

1 Like

Hi there,
I’ve looked in the source and it’s strange that IP is redirecting you back to the language page.

2 questions:

  1. Can you see Anything in the Chrome dev tools?
  2. what happens if you go to /setup/prerequisites? Or better yet: /setup/configure_database

Hi UnderDog,

I’ve tried it out:
If i try to open /setup/prerequisites or /setup/configure_database, IP also throws me back to the language selection page.
In the Chrome development tools I can only see the prerequisites or configure_database page flashing up for a second after clicking next or loading them directly and then disappearing, otherwise nothing noticeable to me.
Do you have something specific in mind?
I tried to user another PHP version, sometimes I experienced odd issues due to PHP.
According to the Wiki InvoicePlane 1.6 should also work with PHP 8.0, but I get the following error with PHP 8.0:
Composer detected issues in your platform: Your Composer dependencies require a PHP version ">= 8.1.0".
I also tried different browsers on different computers already (Edge, Firefox and Chrome), but everywhere the same, can’t get past the language selection.
The only modified files are the templates in the application/views/ folder and of course there are some files in uploads/, otherwise everything is stock.
I’m running out of ideas…

So if you’re using PHP 8.0, that’s fine, you just need to re-run composer.
You most likely downloaded the .zip file from the sjte and that .zip file was created with PHP 8.1 in mind.

The steps for PHP 8.0 are:
delete the vendor directory
delete composer.lock
open composer.json
change minimal PHP version from 8.1 to 8.0 (in your case)
composer install

I tried that out, but nope:
PHP 7.4 did not work, neither did 8.0, 8.1 or 8.2, no matter if I used FPM or CGI PHP.
I also tried other Debian repositories and 3rd party PHP repos (for example SURY PHP), but that also didn’t change anything, still stuck on language selection.
I also created a new vhost and tried to install a new IP instance, just in case there is something wrong with modifications I made, but here I also get stuck at the language selection.
I start to think there is something wrong with Debian Bookworm, is anybody here using Debian 12?
On a Ubuntu Server 22.04.3 LTS VM I have no problem with installing a new Invoice Plane instance or upgrade my old instances.
But I have to admit that I’m not experiencing any issues with other PHP based applications (Joomla, WordPress or self programmed stuff).
I might try out a fresh Debian installation and report back what happened.

1 Like

Okay, I could solve it on my own:
A new Debian installation worked fine, so something had to be wrong with my installation.
I completely purged PHP (apt remove php*), there were a lot of packages from previous projects I didn’t need anymore, for example the 8.1 modules:
php8.1-ast-dbgsym (1.1.0-2+0~20230612.26+debian12~1.gbpcd61a0) ... php8.1-ast (1.1.0-2+0~20230612.26+debian12~1.gbpcd61a0) ... php8.1-bcmath-dbgsym (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-bcmath (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-bz2-dbgsym (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-bz2 (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-cgi-dbgsym (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-zstd-dbgsym (0.12.3-1+0~20230612.7+debian12~1.gbpf751d1) ... php8.1-zstd (0.12.3-1+0~20230612.7+debian12~1.gbpf751d1) ... php8.1-zmq-dbgsym (1.1.3-24+0~20230612.24+debian12~1.gbp9e2772) ... php8.1-zmq (1.1.3-24+0~20230612.24+debian12~1.gbp9e2772) ... php8.1-cgi (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... apache2_invoke php8.1-cgi prerm: No action required php8.1-cli-dbgsym (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-phpdbg-dbgsym (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-yaml-dbgsym (2.2.3-2+0~20230612.33+debian12~1.gbp22e23d) ... php8.1-yaml (2.2.3-2+0~20230612.33+debian12~1.gbp22e23d) ... php8.1-phpdbg (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-xmlrpc-dbgsym (3:1.0.0~rc3-5+0~20230612.12+debian12~1.gbp83dde5) ... php8.1-xmlrpc (3:1.0.0~rc3-5+0~20230612.12+debian12~1.gbp83dde5) ... php8.1-zip-dbgsym (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-zip (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-xsl (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-common-dbgsym (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-curl-dbgsym (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-solr-dbgsym (2.6.0++-1+0~20230612.28+debian12~1.gbpde327d) ... php8.1-solr (2.6.0++-1+0~20230612.28+debian12~1.gbpde327d) ... php8.1-curl (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-dba-dbgsym (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-dba (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-dev (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-ds-dbgsym (1.4.0-5+0~20230612.26+debian12~1.gbp1cb44a) ... php8.1-ds (1.4.0-5+0~20230612.26+debian12~1.gbp1cb44a) ... php8.1-enchant-dbgsym (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-enchant (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-excimer-dbgsym (1.0.4-1+0~20230612.2+debian12~1.gbp44aab6) ... php8.1-excimer (1.0.4-1+0~20230612.2+debian12~1.gbp44aab6) ... php8.1-fpm-dbgsym (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-xhprof-dbgsym (2.3.9++-1+0~20230612.22+debian12~1.gbpd844db) ... php8.1-xhprof (2.3.9++-1+0~20230612.22+debian12~1.gbpd844db) ... php8.1-fpm (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... apache2_invoke php8.1-fpm prerm: No action required php8.1-gd-dbgsym (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-gd (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-gearman-dbgsym (2.1.0++-1+0~20230612.34+debian12~1.gbp7f9167) ... php8.1-gearman (2.1.0++-1+0~20230612.34+debian12~1.gbp7f9167) ... php8.1-gmp-dbgsym (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-gmp (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-gnupg-dbgsym (1.5.1-3+0~20230612.12+debian12~1.gbp3fda77) ... php8.1-gnupg (1.5.1-3+0~20230612.12+debian12~1.gbp3fda77) ... php8.1-grpc-dbgsym (1.51.1+really.1.50.2-1+0~20230415.15+debian12~1.gbpf6f9b9) ... php8.1-grpc (1.51.1+really.1.50.2-1+0~20230415.15+debian12~1.gbpf6f9b9) ... php8.1-redis-dbgsym (6.0.0-1+0~20230912.52+debian12~1.gbp4a33c5) ... php8.1-redis (6.0.0-1+0~20230912.52+debian12~1.gbp4a33c5) ... php8.1-memcached-dbgsym (3.2.0++-1+0~20230622.54+debian12~1.gbp8f3995) ... php8.1-memcached (3.2.0++-1+0~20230622.54+debian12~1.gbp8f3995) ... php8.1-igbinary-dbgsym (3.2.14-1+0~20230618.45+debian12~1.gbpcc1dca) ... php8.1-imagick-dbgsym (3.7.0-4+0~20230701.41+debian12~1.gbpbf7e27) ... php8.1-imagick (3.7.0-4+0~20230701.41+debian12~1.gbpbf7e27) ... php8.1-imap-dbgsym (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-imap (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-inotify-dbgsym (3.0.0++-1+0~20230612.8+debian12~1.gbpdc7981) ... php8.1-inotify (3.0.0++-1+0~20230612.8+debian12~1.gbpdc7981) ... php8.1-interbase-dbgsym (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-interbase (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-intl (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-lz4-dbgsym (0.4.3-5+0~20230612.9+debian12~1.gbpe9959a) ... php8.1-lz4 (0.4.3-5+0~20230612.9+debian12~1.gbpe9959a) ... php8.1-mailparse-dbgsym (3.1.4++-1+0~20230612.30+debian12~1.gbpb1a299) ... php8.1-mailparse (3.1.4++-1+0~20230612.30+debian12~1.gbpb1a299) ... php8.1-maxminddb-dbgsym (1.11.0-4+0~20230612.9+debian12~1.gbp5a3528) ... php8.1-maxminddb (1.11.0-4+0~20230612.9+debian12~1.gbp5a3528) ... php8.1-mbstring-dbgsym (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-mbstring (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-mcrypt-dbgsym (3:1.0.6-1+0~20230612.13+debian12~1.gbp3589bd) ... php8.1-mcrypt (3:1.0.6-1+0~20230612.13+debian12~1.gbp3589bd) ... php8.1-memcache-dbgsym (8.2-2+0~20230716.32+debian12~1.gbpbf55c7) ... php8.1-memcache (8.2-2+0~20230716.32+debian12~1.gbpbf55c7) ... php8.1-mongodb-dbgsym (1.16.2-1+0~20230907.41+debian12~1.gbp9ffec5) ... php8.1-mongodb (1.16.2-1+0~20230907.41+debian12~1.gbp9ffec5) ... php8.1-msgpack-dbgsym (1:2.2.0~rc2-3+0~20230620.38+debian12~1.gbp2bc756) ... php8.1-msgpack (1:2.2.0~rc2-3+0~20230620.38+debian12~1.gbp2bc756) ... php8.1-mysql-dbgsym (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-mysql (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-oauth-dbgsym (2.0.7++-1+0~20230612.32+debian12~1.gbpc77731) ... php8.1-oauth (2.0.7++-1+0~20230612.32+debian12~1.gbpc77731) ... php8.1-odbc-dbgsym (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-odbc (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-opcache-dbgsym (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-pcov-dbgsym (1.0.11-5+0~20230612.26+debian12~1.gbpd6183a) ... php8.1-pcov (1.0.11-5+0~20230612.26+debian12~1.gbpd6183a) ... php8.1-pgsql-dbgsym (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-pgsql (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-pinba-dbgsym (1.1.2-16+0~20230612.17+debian12~1.gbp0aa954) ... php8.1-pinba (1.1.2-16+0~20230612.17+debian12~1.gbp0aa954) ... php8.1-protobuf-dbgsym (3.23.2-1+0~20230612.10+debian12~1.gbp5309ee) ... php8.1-protobuf (3.23.2-1+0~20230612.10+debian12~1.gbp5309ee) ... php8.1-pspell-dbgsym (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-pspell (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-raphf-dbgsym (2.0.1++-1+0~20230627.23+debian12~1.gbp28cbe5) ... php8.1-raphf (2.0.1++-1+0~20230627.23+debian12~1.gbp28cbe5) ... php8.1-rdkafka-dbgsym (6.0.3-1+0~20230612.2+debian12~1.gbpfa9fd4) ... php8.1-rdkafka (6.0.3-1+0~20230612.2+debian12~1.gbpfa9fd4) ... php8.1-readline-dbgsym (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-rrd-dbgsym (2.0.3++-1+0~20230612.27+debian12~1.gbpe50c14) ... php8.1-rrd (2.0.3++-1+0~20230612.27+debian12~1.gbpe50c14) ... php8.1-smbclient-dbgsym (1.1.1-1+0~20230612.24+debian12~1.gbp8be856) ... php8.1-smbclient (1.1.1-1+0~20230612.24+debian12~1.gbp8be856) ... php8.1-snmp-dbgsym (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-snmp (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-soap-dbgsym (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-soap (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-sqlite3-dbgsym (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-sqlite3 (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-ssh2-dbgsym (1.4-1+0~20230612.27+debian12~1.gbpbf65fb) ... php8.1-ssh2 (1.4-1+0~20230612.27+debian12~1.gbpbf65fb) ... php8.1-stomp-dbgsym (2.0.3-2+0~20230612.21+debian12~1.gbpaed5ad) ... php8.1-stomp (2.0.3-2+0~20230612.21+debian12~1.gbpaed5ad) ... php8.1-sybase-dbgsym (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-sybase (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-tideways-dbgsym (5.0.4-14+0~20230612.18+debian12~1.gbp333b7f) ... php8.1-tideways (5.0.4-14+0~20230612.18+debian12~1.gbp333b7f) ... php8.1-tidy-dbgsym (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-tidy (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-uopz-dbgsym (7.1.1++-1+0~20230612.16+debian12~1.gbp4fe75b) ... php8.1-uopz (7.1.1++-1+0~20230612.16+debian12~1.gbp4fe75b) ... php8.1-uploadprogress-dbgsym (2.0.2++-1+0~20230701.28+debian12~1.gbpe2eb7b) ... php8.1-uploadprogress (2.0.2++-1+0~20230701.28+debian12~1.gbpe2eb7b) ... php8.1-uuid-dbgsym (1.2.0-12+0~20230612.23+debian12~1.gbp0d4ed2) ... php8.1-uuid (1.2.0-12+0~20230612.23+debian12~1.gbp0d4ed2) ... php8.1-vips-dbgsym (1.0.13-2+0~20230612.8+debian12~1.gbpc37b1a) ... php8.1-vips (1.0.13-2+0~20230612.8+debian12~1.gbpc37b1a) ... php8.1-xdebug (3.2.1++-1+0~20230831.54+debian12~1.gbpa4efb6) ... php8.1-xml-dbgsym (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ... php8.1-xml (8.1.23-1+0~20230904.54+debian12~1.gbpe6c1a6) ...
The server is old and has seen a lot of distro upgrades and PHP versions over the years.
I then just reinstalled the modules I definetly need for the websites I have running on my server.
After that the InvoicePlane update worked fine.
But I have no idea what module exactly caused this…

1 Like