Guten Abend,
unser gemeinnütziger Verein veranstaltet ein Mal pro Jahr eine Veranstaltung. Anmeldung und Einladungen sollen über das OpenSource Tool Mautic: https://mautic.org/ bereitgestellt werden. Im Tool können wir E-Mails automatisiert versenden und ein Formular erstellen, welches die Eingaben der User erfasst. Das Formular wird auf unserer Webseite eingebunden. Zu Testzwecken habe ich mittels entpacken der .zip Datei und dem damit verbunden Aufruf der Domain, die Installation über die GUI im Browser gemacht, allerdings ist das nicht die Empfohlene Variante. Hier die Dokumentation welche Optionen es gibt bzw. das Composer empfohlen wird: Composer Install. So viel zum Hintergrund.
Nun erwähnte ich eben, dass der oben beschriebene Weg nicht empfohlen wird. Mautic setzt auf Composer und empiehlt auf diese Installationsvariante zu mirgieren. Das Problem hierbei ist, dass Composer die installation nicht beenden kann. Anbei die Logs:
Installing dependencies from lock file
Verifying lock file contents can be installed on current platform.
Nothing to install, update or remove
Package sensio/framework-extra-bundle is abandoned, you should avoid using it. Use Symfony instead.
Generating autoload files
120 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
> php -r "if(file_exists('./.git')&&file_exists('./build/hooks/pre-commit'.(PHP_OS=='WINNT'?'.win':''))){copy('./build/hooks/pre-commit'.(PHP_OS=='WINNT'?'.win':''),'./.git/hooks/pre-commit');} if(file_exists('./.git')&&file_exists('./build/hooks/post-checkout')){copy('./build/hooks/post-checkout','./.git/hooks/post-checkout');}"
> php -r "if(file_exists('./.git/hooks/pre-commit')&&(PHP_OS!='WINNT')){chmod('./.git/hooks/pre-commit',0755);} if(file_exists('./.git/hooks/post-checkout')&&(PHP_OS!='WINNT')){chmod('./.git/hooks/post-checkout',0755);}"
> npm ci --prefer-offline --no-audit
sh: line 1: npm: command not found
Script npm ci --prefer-offline --no-audit handling the npm-ci event returned with error code 127
Script @npm-ci was called via post-install-cmd
composer/package-versions-deprecated: Generating version class...
composer/package-versions-deprecated: ...done generating version class
Alles anzeigen
Da anscheinend NPM fehlt bin ich nun folgendermaßen vorgegangen:
1. löschen der Subdomain
2. neue Subdomain angelegt
3. per Git Version 6.0 gezogen
4. Node.Js auf der Subdomain aktiviert
5. Node.JS Befehl npm install ausgeführt
=> Ergebnis waren wieder Fehler:
# npm install
Process exited with non-zero exit code '254'
npm ERR! code ENOENT
npm ERR! syscall open
npm ERR! path /var/www/vhosts/hosting206372.ae924.netcup.net/groddelochhexe/newmautic/package.json
npm ERR! errno -2
npm ERR! enoent Could not read package.json: Error: ENOENT: no such file or directory, open '/var/www/vhosts/hosting206372.ae924.netcup.net/groddelochhexe/newmautic/package.json'
npm ERR! enoent This is related to npm not being able to find a file.
npm ERR! enoent
npm ERR! A complete log of this run can be found in: /var/www/vhosts/hosting206372.ae924.netcup.net/.npm/_logs/2025-04-28T19_36_22_769Z-debug-0.log
# npm install
Process exited with non-zero exit code '127'
npm WARN deprecated osenv@0.1.5: This package is no longer supported.
npm WARN deprecated inflight@1.0.6: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
npm WARN deprecated @npmcli/move-file@1.1.2: This functionality has been moved to @npmcli/fs
npm WARN deprecated rimraf@2.7.1: Rimraf versions prior to v4 are no longer supported
npm WARN deprecated rimraf@3.0.2: Rimraf versions prior to v4 are no longer supported
npm WARN deprecated glob@7.1.3: Glob versions prior to v9 are no longer supported
npm WARN deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm WARN deprecated glob@7.1.7: Glob versions prior to v9 are no longer supported
npm WARN deprecated glob@7.1.7: Glob versions prior to v9 are no longer supported
npm WARN deprecated debug@3.2.6: Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)
npm ERR! code 127
npm ERR! path /var/www/vhosts/hosting206372.ae924.netcup.net/groddelochhexe/newmautic/node_modules/esbuild
npm ERR! command failed
npm ERR! command sh -c node install.js
npm ERR! sh: line 1: node: command not found
Alles anzeigen
Mit den übermittelten Logs konnte mir der Support nur folgende Antwort leisten:
"npm ist grundsätzlich verfügbar, wenn Sie den entsprechenden Button verwenden und wurde hier auch erfolgreich genutzt. Dennoch kommt es im Rahmen des Prozesses zu einem Fehler, welchen Sie uns auch im Protokoll übermittelt haben. Dies scheint aber kein Fehler im Zusammenhang mit unserem Webhosting zu sein. Dennoch gibt es bei der Verwendung von Node.js in unseren Hostingtarifen gewisse Einschränkungen, die die Installation von komplexeren Anwendungen einschränken könnten. Ich empfehle Ihnen, diesbezüglich einmal in unserem Kundenforum unter https://forum.netcup.de nachzufragen – möglicherweise haben bereits andere Kunden "Mautic" erfolgreich auf unserem Webhosting installiert und können den entscheidenden Tipp geben, der zur Lösung führt."
Mit Foren hatte ich in der Vergangenheit selten Erfolg. Daher hoffe ich jemand aus der Community kann ggf. unterstützen oder selbst versuchen Mautic zu installieren.
Vorab ein großes DANKE!