LycheeOrg / Lychee

A great looking and easy-to-use photo-management-system you can run on your server, to manage and share photos.
https://lycheeorg.github.io/
MIT License
3.33k stars 297 forks source link

switiching to current version - installation error 500 exiftool [was: No settings entry in main cog wheel menu] #1396

Closed schorschi-m closed 2 years ago

schorschi-m commented 2 years ago

Detailed description of the problem [REQUIRED]

Beeing a beginner it might not be a bug but rather an installation issue hard to manage by me#

There is absolutly no setting as logged in user in the main top left menu, only: change login, sorting, dropbox, about, diagnostics, log, sign out.

Cheers to anyone helping out to get me up to speed. I wanted to dismiss the idea of installing my own foto lib but playing around I found lychee really neat, stylish and lightweight.

Steps to reproduce the issue

Steps to reproduce the behavior:

  1. Go to main menu
  2. no settings entry

Screenshots not needed

Output of the diagnostics [REQUIRED]

Diagnostics

Warning: Dropbox import not working. No property for dropboxKey. No critical problems found. Lychee should work without problems!

System Information

Lychee Version: 3.1.6 DB Version: 030102 System: Linux PHP Version: 8 MySQL Version: 100335 Imagick: 1 Imagick Active: 1 Imagick Version: 1690 GD Version: bundled (2.1.0 compatible)

Fatal error: Uncaught TypeError: implode(): Argument #2 ($array) must be of type ?array, string given in /customers/e/9/3/[website]/httpd.www/fotoalbum/plugins/Diagnostics/index.php:139 Stack trace:

0 /customers/e/9/3/[website]/httpd.www/fotoalbum/plugins/Diagnostics/index.php(139): implode(Array, ', ')

1 {main}

thrown in /customers/e/9/3/[website]/httpd.www/fotoalbum/plugins/Diagnostics/index.php on line 139

And Log from Installation to first testalbum and log ins /out 2022-07-03 07:45:46 - error - Lychee\Modules\Database::createTables (180) - Table 'mumelter_netfoto.lychee_settings' doesn't exist 2022-07-03 07:45:46 - error - Lychee\Modules\Database::createTables (225) - Table 'mumelter_netfoto.lychee_albums' doesn't exist 2022-07-03 07:45:46 - error - Lychee\Modules\Database::createTables (248) - Table 'mumelter_netfoto.lychee_photos' doesn't exist 2022-07-03 07:49:08 - notice - Lychee\Modules\Photo::add (219) - Skipped adjustment of photo (01) 2022-07-03 07:49:08 - notice - Lychee\Modules\Photo::add (219) - Skipped adjustment of photo (03) 2022-07-03 07:49:09 - notice - Lychee\Modules\Photo::add (219) - Skipped adjustment of photo (05) 2022-07-03 07:49:09 - notice - Lychee\Modules\Photo::add (219) - Skipped adjustment of photo (04) 2022-07-03 07:49:10 - notice - Lychee\Modules\Photo::add (219) - Skipped adjustment of photo (06) 2022-07-03 07:49:11 - notice - Lychee\Modules\Photo::add (219) - Skipped adjustment of photo (DSC03385) 2022-07-03 07:49:12 - notice - Lychee\Modules\Photo::add (219) - Skipped adjustment of photo (07) 2022-07-03 07:49:13 - notice - Lychee\Modules\Photo::add (219) - Skipped adjustment of photo (09) 2022-07-03 07:49:13 - notice - Lychee\Modules\Photo::add (219) - Skipped adjustment of photo (11) 2022-07-03 07:49:13 - notice - Lychee\Modules\Photo::add (219) - Skipped adjustment of photo (DSC03390) 2022-07-03 07:49:14 - notice - Lychee\Modules\Photo::add (219) - Skipped adjustment of photo (DSC03389) 2022-07-03 07:49:15 - notice - Lychee\Modules\Photo::add (219) - Skipped adjustment of photo (DSC03391) 2022-07-03 07:49:15 - notice - Lychee\Modules\Photo::add (219) - Skipped adjustment of photo (DSC03395) 2022-07-03 07:49:16 - notice - Lychee\Modules\Photo::add (219) - Skipped adjustment of photo (DSC03397) 2022-07-03 07:49:17 - notice - Lychee\Modules\Photo::add (219) - Skipped adjustment of photo (DSC03398) 2022-07-03 07:49:17 - notice - Lychee\Modules\Photo::add (219) - Skipped adjustment of photo (DSC03399) 2022-07-03 07:49:18 - notice - Lychee\Modules\Photo::add (219) - Skipped adjustment of photo (DSC03401) 2022-07-03 07:49:20 - notice - Lychee\Modules\Photo::add (219) - Skipped adjustment of photo (DSC03404) 2022-07-03 07:49:21 - notice - Lychee\Modules\Photo::add (219) - Skipped adjustment of photo (DSC03405) 2022-07-03 07:49:21 - notice - Lychee\Modules\Photo::add (219) - Skipped adjustment of photo (DSC03406) 2022-07-03 07:59:38 - notice - Lychee\Modules\Session::login (81) - User (mumelter) has logged in from 31.207.99.238 2022-07-03 08:01:31 - notice - Lychee\Modules\Session::login (81) - User (mumelter) has logged in from 31.207.99.238 2022-07-03 08:19:17 - notice - Lychee\Modules\Session::login (81) - User (mumelter) has logged in from 31.207.99.238 2022-07-03 08:26:31 - notice - Lychee\Modules\Session::login (81) - User (mumelter) has logged in from 31.207.99.238

Browser and system

Firefox and Mozilla on win11.

schorschi-m commented 2 years ago

Nevermind the above, I was on the old version.

Now I tried the current one from the new repository. Cannot get it installed, it seems harder than before.

After entering the SQL data and hitting "install" I get a error "500", config & debug below, any help greatly appreciated. webspace is shared and no SSH.

APP_NAME=Lychee APP_ENV=production APP_KEY= APP_DEBUG=true APP_URL= DEBUGBAR_ENABLED=false LOG_CHANNEL=stack

##############################################################################

DB_OLD_LYCHEE_PREFIX=

DB_CONNECTION

DB_CONNECTION=mysql DB_HOST=mumelter.net.mysql DB_PORT=3306 DB_DATABASE=mumelter_netfoto DB_USERNAME=mumelter_netfoto DB_PASSWORD=[disclosed] DB_LOG_SQL=true

TIMEZONE=UTC

BROADCAST_DRIVER=log CACHE_DRIVER=file SESSION_DRIVER=file SESSION_LIFETIME=120 QUEUE_DRIVER=sync

SECURITY_HEADER_HSTS_ENABLE=false

REDIS_HOST=127.0.0.1 REDIS_PASSWORD=null REDIS_PORT=6379

MAIL_DRIVER=smtp MAIL_HOST= MAIL_PORT= MAIL_USERNAME= MAIL_PASSWORD= MAIL_ENCRYPTION= MAIL_FROM_NAME= MAIL_FROM_ADDRESS=

PUSHER_APP_ID= PUSHER_APP_KEY= PUSHER_APP_SECRET= PUSHER_APP_CLUSTER=mt1

MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}" MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"

Symfony Exception Symfony Docs Error HTTP 500 Internal Server Error Call to undefined function exec()

Exception Stack Trace 

Error in /customers/e/9/3/mumelter.net/httpd.www/lychee/database/migrations/2019_12_25_0600_config_exiftool_ternary.php (line 23)

        defined('TERNARY') or define('TERNARY', '0|1|2');
        // Let's run the check for exiftool right here
        $has_exiftool = 2; // not set
        try {
            $path = exec('command -v exiftool');
            if ($path == '') {
                $has_exiftool = 0; // false
            } else {
                $has_exiftool = 1; // true
            }

in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php -> up (line 394) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php -> Illuminate\Database\Migrations{closure} (line 403) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php -> runMigration (line 202) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php -> runUp (line 167) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php -> runPending (line 112) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php -> run (line 85) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php -> Illuminate\Database\Console\Migrations{closure} (line 585) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php -> usingConnection (line 94) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php -> handle (line 36) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Container/Util.php :: Illuminate\Container{closure} (line 40) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php :: unwrapIfClosure (line 93) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php :: callBoundMethod (line 37) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Container/Container.php :: call (line 653) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Console/Command.php -> call (line 136) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/symfony/console/Command/Command.php -> execute (line 298) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Console/Command.php -> run (line 121) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/symfony/console/Application.php -> run (line 1005) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/symfony/console/Application.php -> doRunCommand (line 299) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/symfony/console/Application.php -> doRun (line 171) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Console/Application.php -> run (line 94) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Console/Application.php -> run (line 186) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php -> call (line 263) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php -> call (line 261) Facade::__callStatic('call', array('migrate', array('--force' => true))) in /customers/e/9/3/mumelter.net/httpd.www/lychee/app/Actions/Install/ApplyMigration.php (line 35) ApplyMigration->migrate(array()) in /customers/e/9/3/mumelter.net/httpd.www/lychee/app/Http/Controllers/Install/MigrationController.php (line 27) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Routing/Controller.php -> view (line 54) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php -> callAction (line 45) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Routing/Route.php -> dispatch (line 262) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Routing/Route.php -> runController (line 205) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Routing/Router.php -> run (line 695) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php -> Illuminate\Routing{closure} (line 128) Pipeline->Illuminate\Pipeline{closure}(object(Request)) in /customers/e/9/3/mumelter.net/httpd.www/lychee/app/Http/Middleware/InstalledCheck.php (line 38) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php -> handle (line 167) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php -> Illuminate\Pipeline{closure} (line 103) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Routing/Router.php -> then (line 697) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Routing/Router.php -> runRouteWithinStack (line 672) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Routing/Router.php -> runRoute (line 636) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Routing/Router.php -> dispatchToRoute (line 625) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php -> dispatch (line 167) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php -> Illuminate\Foundation\Http{closure} (line 128) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/livewire/livewire/src/DisableBrowserCache.php -> Illuminate\Pipeline{closure} (line 19) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php -> handle (line 167) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/bepsvpt/secure-headers/src/SecureHeadersMiddleware.php -> Illuminate\Pipeline{closure} (line 21) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php -> handle (line 167) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php -> Illuminate\Pipeline{closure} (line 21) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php -> handle (line 31) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php -> handle (line 167) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php -> Illuminate\Pipeline{closure} (line 21) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php -> handle (line 40) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php -> handle (line 167) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php -> Illuminate\Pipeline{closure} (line 27) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php -> handle (line 167) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php -> Illuminate\Pipeline{closure} (line 86) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php -> handle (line 167) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/fideloper/proxy/src/TrustProxies.php -> Illuminate\Pipeline{closure} (line 57) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php -> handle (line 167) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php -> Illuminate\Pipeline{closure} (line 103) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php -> then (line 142) in /customers/e/9/3/mumelter.net/httpd.www/lychee/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php -> sendRequestThroughRouter (line 111) Kernel->handle(object(Request)) in /customers/e/9/3/mumelter.net/httpd.www/lychee/public/index.php (line 74)

nagmat84 commented 2 years ago

I suspect this line from your output

Call to undefined function exec()

is the relevant one. This seems to be a duplicate of #1341.

Even though we claim that exec is optional, one migration uses it to check for ability of exiftool. This is a bug in the migration which should first check whether exec is available at all and only then check for exiftool.

Nonetheless, can you enable exec and install exiftool? This should serve as a workaround for this bug and give also much better and conplete EXIF data in uploaded images.