V5 Install Guide - WHM

Morning guys

I am looking for an install guide for installing the downloaded ZIP file on WHM (cPanel).

Hi,

Here are the relevant docs:

Thanks, appreciated.

I unzipped the package, setup the PHP to 8.1 and when I navigated to the setup page I got this error:
https://DOMAIN.COM/public/setup

500

Are there any details about the 500 error in storage/logs/ or web server error logs?

No, nothing that jumps out but I checked both the HTML root & the public folder and there’s no folder called “setup” so the URL obviously will cough up an error as it’s liiking for the setup folder which does not exist.

/setup is a route, not a folder.

The errors are logged in storage/logs

This is shwta I have in the logs, hope it helps…

#1 /home/alltbilling/public_html/vendor/composer/ClassLoader.php(444): include(‘/home/alltbilli…’)
#2 /home/alltbilling/public_html/vendor/composer/ClassLoader.php(322): Composer\Autoload\includeFile(‘/home/alltbilli…’)
#3 /home/alltbilling/public_html/vendor/laravel/framework/src/Illuminate/Support/helpers.php(109): Composer\Autoload\ClassLoader->loadClass(‘Illuminate\Supp…’)
#4 /home/alltbilling/public_html/vendor/laravel/framework/src/Illuminate/Foundation/PackageManifest.php(89): collect(Array)
#5 /home/alltbilling/public_html/vendor/laravel/framework/src/Illuminate/Foundation/PackageManifest.php(78): Illuminate\Foundation\PackageManifest->config(‘aliases’)
#6 /home/alltbilling/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/RegisterFacades.php(26): Illuminate\Foundation\PackageManifest->aliases()
#7 /home/alltbilling/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(219): Illuminate\Foundation\Bootstrap\RegisterFacades->bootstrap(Object(Illuminate\Foundation\Application))
#8 /home/alltbilling/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(156): Illuminate\Foundation\Application->bootstrapWith(Array)
#9 /home/alltbilling/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(140): Illuminate\Foundation\Http\Kernel->bootstrap()
#10 /home/alltbilling/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(110): Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter(Object(Illuminate\Http\Request))
#11 /home/alltbilling/public_html/public/index.php(53): Illuminate\Foundation\Http\Kernel->handle(Object(Illuminate\Http\Request))
#12 {main} {“exception”:"[object] (Symfony\Component\Debug\Exception\FatalErrorException(code: 1): During inheritance of ArrayAccess: Uncaught ErrorException: Return type of Illuminate\Support\Collection::offsetExists($key) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/alltbilling/public_html/vendor/laravel/framework/src/Illuminate/Support/Collection.php:1277
Stack trace:
#0 /home/alltbilling/public_html/vendor/laravel/framework/src/Illuminate/Support/Collection.php(11): Illuminate\Foundation\Bootstrap\HandleExceptions->handleError(8192, ‘Return type of …’, ‘/home/alltbilli…’, 1277)
#1 /home/alltbilling/public_html/vendor/composer/ClassLoader.php(444): include(‘/home/alltbilli…’)
#2 /home/alltbilling/public_html/vendor/composer/ClassLoader.php(322): Composer\Autoload\includeFile(‘/home/alltbilli…’)
#3 /home/alltbilling/public_html/vendor/laravel/framework/src/Illuminate/Support/helpers.php(109): Composer\Autoload\ClassLoader->loadClass(‘Illuminate\\Supp…’)
#4 /home/alltbilling/public_html/vendor/laravel/framework/src/Illuminate/Foundation/PackageManifest.php(89): collect(Array)
#5 /home/alltbilling/public_html/vendor/laravel/framework/src/Illuminate/Foundation/PackageManifest.php(78): Illuminate\Foundation\PackageManifest->config(‘aliases’)
#6 /home/alltbilling/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/RegisterFacades.php(26): Illuminate\Foundation\PackageManifest->aliases()
#7 /home/alltbilling/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(219): Illuminate\Foundation\Bootstrap\RegisterFacades->bootstrap(Object(Illuminate\Foundation\Application))
#8 /home/alltbilling/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(156): Illuminate\Foundation\Application->bootstrapWith(Array)
#9 /home/alltbilling/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(140): Illuminate\Foundation\Http\Kernel->bootstrap()
#10 /home/alltbilling/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(110): Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter(Object(Illuminate\Http\Request))
#11 /home/alltbilling/public_html/public/index.php(53): Illuminate\Foundation\Http\Kernel->handle(Object(Illuminate\Http\Request))
#12 {main} at /home/alltbilling/public_html/vendor/laravel/framework/src/Illuminate/Support/Collection.php:11)
[stacktrace]
#0 {main}
"}

It looks like the vendor files are missing, can you confirm this is the zip file you used?

https://github.com/invoiceninja/invoiceninja/releases/download/v5.5.23/invoiceninja.zip

Apologies for the delay in getting back to you on this but as suspected, I get a 500 error yet again.

I removed everything from the public_html folder
Uploaded your ZIP file 5.5.23
Copied the contents to the public_html folder

Then wehn to the public URL…
…/setup
And also
/public/setup

And both gave a 500 error.

I checked the public root for a log file and also the “public/storage” folders.

No log file found.

Clearly I am missing something but no idea whet, apologies.

The error may be logged to the web server error logs.

It could be a file permissions issue:

I checked and no issues with access.

Why is it I always have issues with Invoice Ninja I wonder, it’s why I hardly ever update, it’s just painful.

Is there an actual step by step documented process using the ZIP file and shared hosting?

Hi Hillel

I couldn’t get anywhere with version 5 no matter what I did and I followed the instructions so went for version 4.

It appears to have installed, I went through and inserted the DB credentials, all OK. Setup the email, OK.

Now when I go to “…/public” the URL switches to “…/public/setup” and produces the following error:

Error: app is already configured, backup then delete the .env file to re-run the setup

I have tried various browsers, still the same response.

Any suggestions please?

If it’s a new install it may help to remove the .env file.

If it’s an old install there may be a problem with the database credentials in the .env file.

Hi Hillel

I already tried step 1.

As for 2, I checked the .env file and the credentials were OK. They were tested at install and passed.

Are you setting up a clean install of the app?

Hi Hillel

Yes. It’s a completely fresh install of the files & database each time.

I seem to be getting closer with version 4 and it’s also less of a headache to install so would prefer to stick with that until v5 has matured to the point where it can be installed easily I think.

If you want to share the 500 details from the logs for v5 I can try to help.

Not sure why you’re seeing that error with v4.

Thanks Hillel but I have had so many issues with v5 I am sticking with v4 as indicated above.

Following the install I try to go to the public root
(I get a directory listing)

Then
Sub.Domain.com/public

And I get the following error:
Error: app is already configured, backup then delete the .env file to re-run the setup

I did this and still got the same errors.

If it’s a clean install I wouldn’t expect there to be a .env file, it’s created initially by the setup process.