Composer und oxid-shop user/owner

Ich habe mal eine kleine frage bzw. “problem”. Ich entwickel gerade einen neuen shop und hatte gestern das erste mal das problem dass alle dateien die vom shop erstellt/geschrieben werden (logs, tmp usw…) nicht den gleichen benutzer haben, wie alle anderen shop-dateien die vom composer installiert wurden.

Oxid wurde vom root user per composer installiert und die dateien die der shop nach der installation erstellt bekommen den ftp-nutzer zugewiesen. Der ftp-nutzer wird bei der domainerstellung in plesk angelegt.

Kann ich das nachträglich korrigieren oder muss ich den shop komplett neu aufsetzen? Und wie kann es überhaupt dazu kommen?

Grüße

Warum korrigieren? Funktioniert irgendwas nicht?
Die Dateien werden von dem Systembenutzer erstellt, unter dem auch der Webserver läuft. Und bei solchen Verwaltungstools wie Plesk ist es eben üblich, dass der Systembenutzer nicht root ist.

  1. Weil z.b. der vom composer erstellte modules ordner den root als owner hat. Will man jetzt z.b. ein modul über den “modul connector” von www.volker-doerk.de im admin backend installieren dann funktioniert es nicht da der systembenutzer von oxid keine rechte hat in den modules ordner zu schreiben der user root gehört.

Und das problem würde immer dann auftreten sobald übers backend irgend welche dateien in das shop verzeichnis geschrieben werden müssen …

  1. Gab es das problem bei den vorherigen instaltionen von oxid nicht. Alles wurde durch einen benutzer verwaltet.

Composed meldet doch sogar extra, dass Composer nicht als Root ausgeführt werden soll.

Am besten ist es, wenn du Composer mit dem Benutzer ausführst, unter dem auch der Webserver läuft, dann bekommst du auch keine Probleme mit den Rechten.

Hallo,
so installiere ich unter Debian den Shop in den Ordner oxid:

Alles als der User root ausführen!

Vorbereitung Verzeichnisse für Debian:

chown www-data: /var/www
cd /var/www

Eigentliche Shopinstallation:

su -c "composer -q -n create-project --no-dev oxid-esales/oxideshop-project oxid dev-b-6.1-ce" www-data -s /bin/bash

Rechte des Verzeichnisses /var/www zurücksetzen:

chown root: /var/www

Guido

@newotec

nehme ich richtg an das du mit chown www-data: /var/www das “www” verzeichnis kurzzeitig dem user www-data zuweist, damit der parameter www-data in dem befehl su -c "composer -q -n create-project --no-dev oxid-esales/oxideshop-project oxid dev-b-6.1-ce" www-data -s /bin/bash funtioniert bzw. der shop (www-data) auf den www ordner zugreifen kann?

Und nach der installation weist du dem www ordner wieder den root user zu.

Mit welchen user bearbeitet du dann z.b. die tpl dateien per ssh?

Gar nicht, die lade ich mit ftp (der unter www-data läuft) hoch :slight_smile:

Oder natürlich als root und setze dann die Eigentümerrechte (chown)

Das chown /var/www brauche ich, um bei der Installation Verzeichnisse in diesem Verzeichnis anzulegen (zum Beispiel oxid und .cache)

Guido