Running an update results in a server error

I am currently running a self-hosted version of Invoice Ninja on a shared hosting platform, of which I am the owner. Previously, updating Invoice Ninja was not a problem as I had met all the requirements for a shared host. However, since the last update, I am unable to perform the update. I have the ability to make any necessary changes to the shared host. I would greatly appreciate any assistance in resolving this issue. By the way, kudos to this amazing tool! :slight_smile:

Here is the corresponding error in the log file:

[2023-06-03 11:43:31] production.ERROR: PharData::__construct(): open_basedir restriction in effect. File(/home/invoiceninja/web/in.domain.net) is not within the allowed path(s): (/home/invoiceninja/.composer:/home/invoiceninja/web/in.domain.net/public_html:/home/invoiceninja/web/in.domain.net/private:/home/invoiceninja/web/in.domain.net/public_shtml:/home/invoiceninja/tmp:/tmp:/var/www/html:/bin:/usr/bin:/usr/local/bin:/usr/share:/opt) {"userId":1,"exception":"[object] (ErrorException(code: 0): PharData::__construct(): open_basedir restriction in effect. File(/home/invoiceninja/web/in.domain.net) is not within the allowed path(s): (/home/invoiceninja/.composer:/home/invoiceninja/web/in.domain.net/public_html:/home/invoiceninja/web/in.domain.net/private:/home/invoiceninja/web/in.domain.net/public_shtml:/home/invoiceninja/tmp:/tmp:/var/www/html:/bin:/usr/bin:/usr/local/bin:/usr/share:/opt) at /home/invoiceninja/web/in.domain.net/public_html/app/Http/Controllers/SelfUpdateController.php:78)

you’ll need to ask your host to enable open_basedir extension.

Correct me if I’m wrong, but open_basedir is not an extension, rather it is a setting in the PHP configuration. In my case, I would need to disable it on my shared hosting server, which would pose a significant security risk since not only am I using it for myself, but my customers are also utilizing the shared server. That’s why I’m a bit confused about why this error is occurring since the last updates, and why it now requires permission to access folders beyond its designated directory. Prior to this issue, I had already updated Invoice Ninja multiple times without any problems.

We changed from a .zip upgrade to a .tar file upgrade to help with memory consumption during the upgrades.

We have not changed any of the paths that we use, the system downloads into the Invoice Ninja folder and extracts from there.

From the error it looks like you are not allowing the root invoice ninja folder to be accessible which is where we are attempting to extract the file.