Contao-Camp 2024
Ergebnis 1 bis 14 von 14

Thema: Problem im Dateimanager

  1. #1
    Contao-Nutzer
    Registriert seit
    16.11.2012.
    Beiträge
    88
    Partner-ID
    9840
    Contao-Projekt unterstützen

    Support Contao

    Standard Problem im Dateimanager

    Hallo,

    beim Erstellen von Ordnern in der ebene \files\ bekomme ich folgende Fehlermeldung.
    Der "physische" Ordner unter \files wird angelegt. Der Link in \web\files\ jedoch nicht.

    Was kann hier die Ursache sein, bzw. welche Berechtigungen fehlen?

    url.jpg

    Code:
    [2022-07-04T14:31:45.843227+02:00] request.CRITICAL: Uncaught PHP Exception Symfony\Component\Filesystem\Exception\IOException: "Failed to remove directory "/var/www/kd/kunde/domain.com/web/files": rmdir(/var/www/kd/kunde/domain.com/web/files): Permission denied" at /var/www/kd/kunde/domain.com/vendor/symfony/filesystem/Filesystem.php line 200 {"exception":"[object] (Symfony\\Component\\Filesystem\\Exception\\IOException(code: 0): Failed to remove directory \"/var/www/kd/kunde/domain.com/web/files\": rmdir(/var/www/kd/kunde/domain.com/web/files): Permission denied at /var/www/kd/kunde/domain.com/vendor/symfony/filesystem/Filesystem.php:200)"} []
    Danke und beste Grüße
    booh

  2. #2
    Contao-Fan
    Registriert seit
    20.10.2012.
    Ort
    Berlin
    Beiträge
    257

    Standard

    Ich nehm' an du hast den Ordner hinter dem Rücken von Contao erstellt (z.B. auf der Shell mit anderen Benutzer-namen/-rechten)?
    Damit der nach web/files verlinkt wird muss sich in dem Ordner eine ".public" Datei befinden oder in der Dateiverwaltung den Haken "Öffentlich" setzten.
    Zu guter letzt gibt's noch unter Systemwartung den Punkt "Symlinks neu erstellen".

  3. #3
    Contao-Nutzer
    Registriert seit
    16.11.2012.
    Beiträge
    88
    Partner-ID
    9840
    Contao-Projekt unterstützen

    Support Contao

    Frage

    Zitat Zitat von andre.saage Beitrag anzeigen
    Ich nehm' an du hast den Ordner hinter dem Rücken von Contao erstellt (z.B. auf der Shell mit anderen Benutzer-namen/-rechten)?
    Damit der nach web/files verlinkt wird muss sich in dem Ordner eine ".public" Datei befinden oder in der Dateiverwaltung den Haken "Öffentlich" setzten.
    Zu guter letzt gibt's noch unter Systemwartung den Punkt "Symlinks neu erstellen".
    Hallo, danke für die Idee, doch das ist es leider nicht.
    Ich verusuche das Ordnererstellen "ganz normal" über den Dateimanager im Backend. Die Fehlermeldung erscheint dann beim Erstellen von öffentlichen Ordnern bzw. auch, wenn ich einen Nicht-öffentlichen öffentlich machen möchten. Gleiches beim Neuerstellen von Symlinks in der Systemwartung.

    Noch jemand eine Idee?

  4. #4
    Contao-Fan
    Registriert seit
    20.10.2012.
    Ort
    Berlin
    Beiträge
    257

    Standard

    Hmm.. versteh ich nicht so recht:
    Die Fehlermeldung sagt was von "remove directory" also löschen - aber du willst eigentlich einen Ordner erstellen?
    Ist das eine Neuinstallation? - dann müsste ja files vom Manager korrekt angelegt worden sein - oder hast du was von einer Umgebung in eine andere kopiert?
    Scheint auf jeden Fall irgendwo die falsche Berechtigung oder Gruppe/Eigentümer zu sein.
    Bei mir ist das für files immer 755 / für web 750 und für web/files 755 falls das weiterhilft.
    Denke, dass ist eher eine Sache der Serverkonfiguration und kein Fehler von Contao.

  5. #5
    Contao-Nutzer
    Registriert seit
    16.11.2012.
    Beiträge
    88
    Partner-ID
    9840
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Die Berechtigungen stehen laut ftp tatsächlich so da.

    Leider habe ich kein Zugriff auf das Hosting (Plusserver). Das läuft über zwei weitere Ecken. Dadurch ist das furchtbar kompliziert und die Reaktionszeiten entsprechend lang...



    Vielleicht helfen die Stack-Trace-Einträge:

    Code:
    File or folder "files/__new__" is not mounted or cannot be found.
    Code:
    Symfony\Component\Filesystem\Exception\IOException:
    Failed to remove directory "/var/www/kd/kunde/domain.com/web/files": rmdir(/var/www/kd/kunde/domain.com/web/files): Permission denied
    
      at vendor/symfony/filesystem/Filesystem.php:200
      at Symfony\Component\Filesystem\Filesystem::doRemove(object(FilesystemIterator), false)
         (vendor/symfony/filesystem/Filesystem.php:159)
      at Symfony\Component\Filesystem\Filesystem->remove(array('/var/www/kd/kunde/domain.com/web/files'))
         (vendor/contao/core-bundle/src/Command/SymlinksCommand.php:97)
      at Contao\CoreBundle\Command\SymlinksCommand->generateSymlinks()
         (vendor/contao/core-bundle/src/Command/SymlinksCommand.php:78)
      at Contao\CoreBundle\Command\SymlinksCommand->execute(object(ArgvInput), object(NullOutput))
         (vendor/symfony/console/Command/Command.php:298)
      at Symfony\Component\Console\Command\Command->run(object(ArgvInput), object(NullOutput))
         (vendor/contao/core-bundle/src/Resources/contao/library/Contao/Automator.php:380)
      at Contao\Automator->generateSymlinks()
         (vendor/contao/core-bundle/src/Resources/contao/dca/tl_files.php:902)
      at tl_files->protectFolder(object(DC_Folder), '')
         (vendor/contao/core-bundle/src/Resources/contao/classes/DataContainer.php:380)
      at Contao\DataContainer->row()
         (vendor/contao/core-bundle/src/Resources/contao/drivers/DC_Folder.php:1446)
      at Contao\DC_Folder->edit()
         (vendor/contao/core-bundle/src/Resources/contao/classes/Backend.php:670)
      at Contao\Backend->getBackendModule('files', null)
         (vendor/contao/core-bundle/src/Resources/contao/controllers/BackendMain.php:168)
      at Contao\BackendMain->run()
         (vendor/contao/core-bundle/src/Controller/BackendController.php:49)
      at Contao\CoreBundle\Controller\BackendController->mainAction()
         (vendor/symfony/http-kernel/HttpKernel.php:152)
      at Symfony\Component\HttpKernel\HttpKernel->handleRaw(object(Request), 1)
         (vendor/symfony/http-kernel/HttpKernel.php:74)
      at Symfony\Component\HttpKernel\HttpKernel->handle(object(Request), 1, true)
         (vendor/symfony/http-kernel/Kernel.php:202)
      at Symfony\Component\HttpKernel\Kernel->handle(object(Request))
         (web/index.php:44)

  6. #6
    Community-Moderatorin & Contao-Urgestein Avatar von mlweb
    Registriert seit
    10.07.2011.
    Beiträge
    6.715
    Contao-Projekt unterstützen

    Support Contao

    Standard

    web/files sollte ein Symlink sein. Er wird m.E. erst erstellt, wenn innerhalb von files ein öffentlicher Ordner angelegt wird.

    Für mich sieht es so aus als wenn bei Dir (warum auch immer) web/files ein Ordner und kein Symlink ist.
    Du solltest den Ordner web/files in dem Fall über FTP löschen und noch einmal testen.
    Ich habe Dir mit meinen Hinweisen geholfen und Du möchtest Dich bedanken?
    Unterstütze bitte das Contao-Projekt (Button Links)
    Weitere Spendenmöglichkeiten
    ------------------------------------------------------------------------------------------------------
    Contao-Dokumentation: Contao-Handbuch und Contao-Entwickler-Doku
    Contao-Online-Video-Kurse: Contao Academy
    Funktionalität erweitern: Contao-Erweiterungen

    Für Dinge die man mit html5 und css3 lösen kann, braucht man kein javascript.




  7. #7
    Contao-Nutzer
    Registriert seit
    16.11.2012.
    Beiträge
    88
    Partner-ID
    9840
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Danke! Ich glaube das ist ein guter Ansatz. Zumindest gibt es eine neue Fehlermeldung.
    web/files war ein richtiger Ordner (warum auch immer).
    Habe ihn gelöscht und erhalte nun eine andere Fehlermeldung:

    Code:
    [2022-07-08T09:40:35.866905+02:00] request.CRITICAL: Uncaught PHP Exception Symfony\Component\Filesystem\Exception\IOException: "Failed to remove directory "/var/www/kd/kunde/domain.com/web/system/modules": rmdir(/var/www/kd/kunde/domain.com/web/system/..E0q): Directory not empty" at /var/www/kd/kunde/domain.com/vendor/symfony/filesystem/Filesystem.php line 200 {"exception":"[object] (Symfony\\Component\\Filesystem\\Exception\\IOException(code: 0): Failed to remove directory \"/var/www/kd/kunde/domain.com/web/system/modules\": rmdir(/var/www/kd/kunde/domain.com/web/system/..E0q): Directory not empty at /var/www/kd/kunde/domain.com/vendor/symfony/filesystem/Filesystem.php:200)"} []
    Was soll "/domain.com/web/system/..E0q" sein? Die Zeichen ändern sich bei jedem Versuch. Auch bei Wartung/Symlinks neu kommt diese Meldung.

  8. #8
    Community-Moderatorin & Contao-Urgestein Avatar von mlweb
    Registriert seit
    10.07.2011.
    Beiträge
    6.715
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Das Problem ist m.E. das Gleiche - web/system/modules sollte ein Symlink sein. Ist aber als Ordner vorhanden, damit kann kein Symlink erstellt werden.
    Ich vermute mal, dass die Installation irgenwann mal komplett kopiert wurde und damit aus den Symlinks Ordner geworden ist.
    Falls meine Vermutung stimmt - es gibt keinen Grund die komplette Installation zu kopieren, wenn man eine Parallel-Installation braucht. Dazu reichen einige wenige Ordner und Dateien.

    Nachtrag: ggf. wurden auch nur Module aus einer alten Installation in den web Ordner verschoben.
    Geändert von mlweb (08.07.2022 um 12:09 Uhr)
    Ich habe Dir mit meinen Hinweisen geholfen und Du möchtest Dich bedanken?
    Unterstütze bitte das Contao-Projekt (Button Links)
    Weitere Spendenmöglichkeiten
    ------------------------------------------------------------------------------------------------------
    Contao-Dokumentation: Contao-Handbuch und Contao-Entwickler-Doku
    Contao-Online-Video-Kurse: Contao Academy
    Funktionalität erweitern: Contao-Erweiterungen

    Für Dinge die man mit html5 und css3 lösen kann, braucht man kein javascript.




  9. #9
    Contao-Nutzer
    Registriert seit
    16.11.2012.
    Beiträge
    88
    Partner-ID
    9840
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Ja, das sehe ich auch so. Keine Ahnung, was der Hoster/Serverbetreiber da angerichtet hat. Es gab bereits endlos E-Mailverkehr, weil schon die Installationsvorausetzungen ewig nicht gestimmt haben.
    Jedenfalls kann Contao im Moment keine neuen Symlinks erstellen. In den Manager komme ich auch auch nicht, weil da auch irgendwelche Rechte fehlen. Einfach furchtbar. Muss wohl mal klare Worte beim Kunden finden.

    Ich glaube wir können das hier beenden, weil "die Lösung" wird es vermutlich nicht geben. Danke für euren Input.

    booh

  10. #10
    Community-Moderatorin & Contao-Urgestein Avatar von mlweb
    Registriert seit
    10.07.2011.
    Beiträge
    6.715
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Ein geeigneter Hoster spart Nerven und Kosten.
    Ich habe Dir mit meinen Hinweisen geholfen und Du möchtest Dich bedanken?
    Unterstütze bitte das Contao-Projekt (Button Links)
    Weitere Spendenmöglichkeiten
    ------------------------------------------------------------------------------------------------------
    Contao-Dokumentation: Contao-Handbuch und Contao-Entwickler-Doku
    Contao-Online-Video-Kurse: Contao Academy
    Funktionalität erweitern: Contao-Erweiterungen

    Für Dinge die man mit html5 und css3 lösen kann, braucht man kein javascript.




  11. #11
    Wandelndes Contao-Lexikon Avatar von tab
    Registriert seit
    22.10.2013.
    Beiträge
    10.060
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Also web/files sollte schon ein Ordner sein, sonst wären automatisch alle Dateien unter /files "freigegeben", weil sie ja über den Symlink für den Webserver erreichbar wären. Unterhalb von web/files wird praktisch die Ordnerstruktur von /files nachgebildet, wobei freigegebene Ordner dann unterhalb web/files als Symlink auf den entsprechenden Ordner unterhalb /files erzeugt werden. Nicht freigegebene Ordner dagegen werden als normale Ordner erzeugt. Deswegen kann /files nicht freigegeben werden und Unterordner von freigegebenen Ordnern sind automatisch freigegeben.

  12. #12
    Wandelndes Contao-Lexikon Avatar von tab
    Registriert seit
    22.10.2013.
    Beiträge
    10.060
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Zitat Zitat von mlweb Beitrag anzeigen
    Ein geeigneter Hoster spart Nerven und Kosten.
    Da bin ich voll bei dir. Am einfachsten kommt man wohl dahin, wenn die durch unnötige Aufwände erzeugten Kosten gegenüber dem Kunden auch tatsächlich, mit entsprechendem Vermerk, abgerechnet werden. Wenn dadurch das Projekt verloren geht, auch nach einem (er)klärenden Gespräch, dann muss es eben so sein!

  13. #13
    Community-Moderatorin & Contao-Urgestein Avatar von mlweb
    Registriert seit
    10.07.2011.
    Beiträge
    6.715
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Zitat Zitat von tab Beitrag anzeigen
    Also web/files sollte schon ein Ordner sein.
    Stimmt Du hast recht web/files ist ein Ordner und web/system/modules auch. Die Unterordner bzw. Unterordner der einzelnen Modules sind Symlinks.
    Hatte mich durch das
    Code:
    Failed to remove directory
    ins Bockshornjagen lassen.

    Aber irgendetwas scheint da oberfaul, denn beim Anlegen eines neuen öffentlichen Ordners im Backend muss ja der Ordner web/files nicht gelöscht werden.
    Geändert von mlweb (08.07.2022 um 14:26 Uhr)
    Ich habe Dir mit meinen Hinweisen geholfen und Du möchtest Dich bedanken?
    Unterstütze bitte das Contao-Projekt (Button Links)
    Weitere Spendenmöglichkeiten
    ------------------------------------------------------------------------------------------------------
    Contao-Dokumentation: Contao-Handbuch und Contao-Entwickler-Doku
    Contao-Online-Video-Kurse: Contao Academy
    Funktionalität erweitern: Contao-Erweiterungen

    Für Dinge die man mit html5 und css3 lösen kann, braucht man kein javascript.




  14. #14
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.878
    Partner-ID
    10107

    Standard

    Verbinde dich per SSH und poste die Konsolenausgabe von
    Code:
    ls -la /var/www/kd/kunde/domain.com/web
    » sponsor me via GitHub or PayPal or Revolut

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •