• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Na, habt Ihr genügend in Stoffen geschwelgt? Dann könntet Ihr Euch jetzt die zahlreichen Einsendungen dieses Monats anschauen und entscheiden, welches Foto davon Euch am Besten gefällt. Hier geht es lang zur Abstimmung --> Klick

Server und User mit gleichen Rechten für Dateien in /Sites/?

C64

Kaiser Alexander
Registriert
12.04.06
Beiträge
3.958
Hallo zusammen,
ich teste gerade viel PHP und stoße gerade lokal an folgendes Problem:Ich habe die Seite unter im Sites-Ordner meines Users abgelegt.
Zunächst habe ich schon bei der Installation des CMS Probleme, da ich für die Ordner, die ich angelegt habe keine Schreibrechte hab.
Könnte ich jetzt natürlich Read/Write für everyone machen, aber das ist erstens nicht wirklich schön, zweitens bekomme ich spätestens Probleme, wenn ich ein Modul mit PHP installiere und ich diese Dateien dann als User bearbeiten will. Dann muss ich bei jedem Speichern mein Admin-Passwort eingeben....
Irgendwas ist da wahrscheinlich falsch eingestellt, richtig?
Ich habe leider von Servern etc. keine Ahnung und hab mir das alles vor 4 Jahren eingerichtet... nachdem ich das damals schon lokal nicht sauber hinbekommen habe, hab ich die Entwicklung auf mein NAS verschoben, das möchte ich jetzt nicht nutzen.
Hat da evtl. jemand eine Idee, was ich meine und wie ich das Problem beheben könnte?
 

salome

Golden Noble
Registriert
20.08.06
Beiträge
23.750
Leider! Ich habe überhaupt keine Idee was du meinst.
Und auch keine, welches System du nutzt, welchen Server? Welches CMS?
Bist du tatsächlich Webdesigner? Oder ist deine Signatur ein Scherz?
Salome
 

simmac

Melrose
Registriert
22.03.11
Beiträge
2.482
Ich würde an deiner Stelle sowieso einen lokalen Server mit XAMPP erstellen, denn spätestens wenn du mit einem CMS arbeitest, brauchst du einen MySQL- Server, welchen du auch lokal anlegen kannst.

MFG
SimMac
 

timmy38233

Rhode Island Greening
Registriert
20.07.08
Beiträge
474
Ja, er ist tatsächlich Webdesigner und wie es aussieht (Portfolio) kann er das auch sehr gut ;)
Nur gehört es nunmal nicht unbedingt zu den Aufgaben eines Webdesigners sich mit den Serverumgebungen auszukennen…

Ich kann Dir für so etwas MAMP empfehlen. Mit XAMPP geht es sicherlich auch, jedoch habe ich das noch nicht ausprobiert.
Über MAMP habe ich mir dann einen Ordner erstellt, den ich aus Coda heraus als lokale Umgebung nutze und kann so auch die Rechte vernünftig verteilen. In MAMP Pro habe ich ausserdem noch die Möglichkeit lokale Domains anzulegen, was mir das Synchronhalten von Server- und lokaler Umgebung deutlich erleichtert.
 

__struct

Jonagold
Registriert
11.04.13
Beiträge
20
Hi,

du kannst deinen Nutzer in eine Gruppe mit dem Server packen und Gruppen-spezifische Zugriffsrechte einstellen.
 

simmac

Melrose
Registriert
22.03.11
Beiträge
2.482
Ups, habe eh MAMP gemeint, musste nur heute auf einem Windows PC :)() in der Schule eine lokale Serverumgebung erstellen, da habe ich XAMPP verwendet. Am Mac verwende ich auch MAMP.

MFG
SimMac
 

wdominik

Weißer Winterglockenapfel
Registriert
15.01.10
Beiträge
880
Also gerade im Hinblick auf Spezialisierung muss nicht jeder Webdesigner auch gleich ein hervorragender Serveradministrator sein, von daher muss man nicht gleich seine Qualifikation anzweifeln. ;) Gut es schadet auch nicht, sich mit solchen Themen auseinander zu setzen, aber deswegen fragt er ja nach. :)

Auch wenn wirklich einige Details fehlen, was Webserver und Betriebssystem angehen, versuche ich einfach mal die Annahme zu treffen, dass du Linux oder Mac OS X nutzt. Im Grunde liegt das Problem wohl einfach darin, wie das Rechtemanagement hier funktioniert. Der Webserver läuft hier mit einem eigenen Benutzeraccount (Ich hoffe zumindest, dass er nicht als root läuft ;)) und einer eigenen Gruppe, meinet wegen www/www. Dein persönlicher Benutzteraccount hat wiederum auch einen Namen und eine Gruppe, sagen wir users/c64.
Jedem Verzeichnis ist jetzt ein Benutzer und eine Gruppe als Eigentümer zugeteilt. Rechte (im Wesentliche lesen/schreiben/ausführen) lassen sich nun für den Benutzer (z. B. c64 allein), alle Mitglieder der Gruppe (z. B. users) oder alle Benutzer setzen.
Meistens ist die Standardeinstellung hierfür, dass der Benutzter lesen und schreiben kann, alle anderen nur lesen. Das führt dann auch zu dem genannten Problem.
Bist du der Eigentümer der Dateien, kann der Webserver sie nicht bearbeiten, und umgekehrt wird dir der Zugang verwehrt, bzw. nur über den Umweg über root (Administrator) gestattet.
Eine mögliche Lösung hast du ja schon genannt, nämlich die Privilegien erhöhen, sprich allen Benutzern Schreibzugriff gewähren. In einem reinen Testumfeld, dass auch nur du verwendest, könnte man das auch durchaus so machen.
Andere Möglichkeit wäre es, dem Sites-Ordner als Eigentümer den Benutzer und die Gruppe des Webservers zugeben (www/www bzw. wie es eben im Webserver konfiguriert ist). Nun setzt du die Rechte des Ordners, bzw. der Dateien/Unterordner so, dass sowohl Benutzer als auch Gruppenmitglieder Lese- sowie Schreibzugriff haben. Jetzt fügst du deinen Benutzeraccount in die Gruppe www ein. (Allerdings als zusätzliche Gruppe, nicht die Primärgruppe überschreiben)
Kleines Detail, welches oft übersehen wird: Ordner benötigen zusätzlich das „Ausführrecht“ (x), damit sie geöffnet werden können. Dateien sollte dieses Recht allerdings nicht leichtfertig gegeben werden – auch PHP-Skripte benötigen kein direkte Ausführung.
 

C64

Kaiser Alexander
Registriert
12.04.06
Beiträge
3.958
Zunächst mal danke an alle, die mir schon mal Hinweise gegeben haben. Tatsächlich hab ich das gestern alles geschrieben, nachdem ich schon ziemlich genervt war und hab vielleicht deshalb nicht genug Info gegeben.Also, alles was mir spontan einfällt:
Hab das "normale" OS 10.8.3 auf meinem iMac installiert.
Es läuft PHP 5.3.15... Hab den standardmäßig von OS X mitgelieferten Apache gelassen.


Wie gesagt, ich weiß wirklich nicht mehr, was ich da vor Jahren mal eingerichtet habe. XAMPP und MAMP habe ich definitiv eingesetzt.
Ich glaube mich zu erinnern, dass ich das seit Tiger alles einfach mitgeschleppt habe.
Lediglich für MySQL habe ich - soweit ich mich erinnere - zusätzlich ein Paket installiert, wobei das ja aktuell auch nicht mein Problem ist.

Tatsächlich ist das Problem, dass ich den Server als User nicht sehe. Wenn ich beispielsweise mit Rechtsklick->Informationen den Server (egal ob der jetzt www, wwwrun oder sonst wie heißt) mit Schreibrechten hinzufügen könnte, wäre das ja schon super. Wobei dann nach wie vor, das Problem besteht, dass ich Dateien, die dann vom Server erstellt werden, mit meinem User in Coda nicht direkt bearbeiten kann, ohne dass ich erst wieder ein Administrator-Passwort brauche.

@salome: Herzlich Dank für deinen sehr hilfreichen Kommentar. 1. werde ich mich niemals Webdesigner nennen, weil ich keine Prüfung der IHK abgelegt habe. 2. ein Webdesigner muss keinen Server konfigurieren können, ich kenne sogar einige, die nicht mal anständig HTML schreiben können, sondern nur Programme dazu nutzen. 3. müssen selbst Programmierer, die PHP gut beherrschen, keinen Server konfigurieren können. Aber wie gesagt: Danke für nichts.

EDIT: @salome: Da hat die Ente wohl selbst ein Problem in ähnlicher Richtung nicht lösen können und pfrimelt mich so von der Seite an... tststs...
 
Zuletzt bearbeitet:

C64

Kaiser Alexander
Registriert
12.04.06
Beiträge
3.958
Das klingt gut! Leider kommt bei meinem Test nach der Passworteingabe ein "Record was not found."
Habe folgendes eingegeben:
Code:
[COLOR=#333333]sudo dseditgroup -o edit -a ikr -t MeinNutzer _www[/COLOR]

Aber genau nach so einer Lösung suche ich. Meinen User in die ServerGruppe mit reinsetzen, wenn möglich, damit ich vom Server erstellte Dateien ändern kann....
 

C64

Kaiser Alexander
Registriert
12.04.06
Beiträge
3.958
Der Name _www stimmt sicher. Habe mir jetzt auch mal alle Gruppen anzeigen lassen ;)
Ist ein "-" am Anfang eines Namens überhaupt zulässig?
 

__struct

Jonagold
Registriert
11.04.13
Beiträge
20
typo.....

Code:
sudo dscl . -append /Groups/_www GroupMembership YourUsername

sudo chown -R _www /document_root 
sudo chgrp -R _www /document_root

oder 
sudo chown -R _www:_www /document_root
 
  • Like
Reaktionen: simmac

C64

Kaiser Alexander
Registriert
12.04.06
Beiträge
3.958
Das hat mir schon mal geholfen! Super :)
Man dankt ;)
 

Slashwalker

Winterbanana
Registriert
15.05.06
Beiträge
2.213
Hi,
das Stichwort heißt SuExec. Mittels SuExec kannst du PHP als FastCGI unter dem Benutzer laufen lassen, dem die Dateien gehören.
PHP/Apache benötigen dann keine gesonderten Rechte ;)
 
  • Like
Reaktionen: C64