PHP / Apache tot? + 403

D.h. ich muss die Rechte per Terminal verteilen?
Leider weiß ich nicht wie, das Terminal ist für mich ein Buch mit 7 Siegeln, öhm, r = read, w = write und x = ??, sollte für irgendwas a la "Ausführen" stehen, d kenne ich nicht.
Wenn ich mir das aber ansehe scheinen die Rechte doch zu stimmen, Gesetz dem Falle das letzte "Dreierpäckchen" steht für everyone.

Edit//
Okay, werde mir den Link zu Gemüte führen.
 
Das versteh ich jetzt nicht ganz.
Sofern ich das richtige gelesen habe, stand da was a la im Root sollte auch nur der Rootuser Schreibrechte haben, gut, bei mir hat wheel selbige Rechte, aber die Gruppe kenne ich nicht

Edit//
Wenn ich den error_log so anschaue, blockiert mich die Configuration des Servers? Wie ist das möglich? Habe doch nichts geändert.
 
Was meinst Du, warum ich nach den ls - Ausgaben gefragt habe, denn leider kann man im Finder kein "betreten"-Recht einstellen.
Kann man echt nicht? muss ich morgen glatt mal auf Arbeit testen.
Das wäre ja ein echtes Armutszeugnis.

Abgesehen davon: Wenn Du es schon so genau nimmst, dann genügt für das ~/Sites (nicht ~/Site) Verzeichnis das x ohne r. r wird nur auf die einzelnen Dateien benötigt (index.html etc.)
stimmt eigentlich...
Außer wen directory-listing eingeschaltet ist, das macht ohne Leserecht keinen Sinn.
[/QUOTE]
 
D.h. ich muss die Rechte per Terminal verteilen?
Leider weiß ich nicht wie, das Terminal ist für mich ein Buch mit 7 Siegeln, öhm, r = read, w = write und x = ??, sollte für irgendwas a la "Ausführen" stehen, d kenne ich nicht..
x=ausführen (eXecute) bei Dateien.
Bei Verzeichnissen ist es dann das betreten.
Ist wirklich etwas Verwirrend weil nicht direkt ersichtlich...

Mir war nicht bewusst das apple das in der GUI vergessen hat, eigentlich ja echt unglaublich :nono:
 
Wurde wohl nicht vergessen sondern eher bewusst weggelassen.
Was ich persönlich aber noch bedenklicher Finde, ist, dass Apple in der Finderinfo anstelle von "others" "everybody" schreibt. Das ist keine Lücke sondern ein audrücklicher Fehler.
"Jeder" ist doch etwas ganz anderes als "Andere".
 
Wurde wohl nicht vergessen sondern eher bewusst weggelassen.
apple will es seinen usern nicht zumuten ordnerrechte ordentlich zu setzen?
Wieso lässt man sowas bewusst weg?

Was ich persönlich aber noch bedenklicher Finde, ist, dass Apple in der Finderinfo anstelle von "others" "everybody" schreibt. Das ist keine Lücke sondern ein audrücklicher Fehler.
"Jeder" ist doch etwas ganz anderes als "Andere".
Da muss ich glatt mal überprüfen was apple da macht.
die manpage von chmod kennt ja auch everybody, wobei es in der manpage mit "all" bezeichnet wird. Aus demm Stehgreif weiss ich nicht ob "everybody" bei apple ein chmod -a, oder ein chmod -o macht.

man:chmod sagt in der deutschen Übersetzung:
Eine Kombination der Buchstaben »ugoa« steuert, wessen Zugriff auf die Datei geändert wird: Der Besitzer (User - u), andere Nutzer in der Gruppe der Datei (g), andere Nutzer, die nicht in der Gruppe der Datei sind (Other - o), oder alle Nutzer (a). Wenn keiner davon gegeben ist, ist der Effekt so, als ob »a« gegeben sei, aber es werden keine Bits beeinflusst, die in der »umask« gesetzt sind.

mal schaun ob ich morgen zeit finde das mal auszuprobieren.
 
Hm, jetzt geht das immer noch nicht, kann doch nicht sein, dass das einfach nicht will. :-(

Zusammenfassung:
- Rechte scheinen zu stimmen?
- Kein "permission denied"-Fehler mehr
- Stattdessen was neues (was atm bei jedem Zugriff im error_log zu lesen ist)
Code:
[Mon Sep 15 16:26:52 2008] [error] [client 192.168.0.41] client denied by server configuration: /Users/Julian/Sites/

Also stimmt was mit der Konfiguration nicht?
Kann ich mir nicht vorstellen, da ich nichts gemacht habe (außer PHP auskommentieren, aber früher machte das auch keine Probleme), wo finde ich denn eine unveränderte Konfiguration die ich, zum Testen, rein kopieren könnte?
Edit//
Hab die httpd.conf aus /original in das apache2 Verzeichnis kopiert, bzw. die bisherige damit überschrieben, funktioniert aber weiterhin nicht.
 
Ich hab doch oben einen Link gepostet, wo der Fehler erklärt ist.
Kurz: Deine Konfiguration verbietet den Zugriff. Steht auch da: "client denied by server configuration"
 
Aber ich finde dort keine Lösung des Problems ^^
Auskommentiert hab ich in der httpd.conf ja nichts, habe auch schon die aus /original in das Apacheverzeichniss kopiert.

httpd.conf - diese benutze ich gerade, wobei das die normale, unveränderte, Standardconfig ist.
 
Ja, und die "unveränderte Standardconfig" ist nunmal eine sehr restriktive.

Vielleicht liest Du einfach mal die gepostete Konfiguration inkl. der Kommentare selbst durch. Da solltest Du in Verbindung mit dem von mir gepostete Link sehr schnell auf die Lösung kommen.
 
Ja, nein, ich hab so etwas schon bemerkt
Code:
#
# Each directory to which Apache has access can be configured with respect
# to which services and features are allowed and/or disabled in that
# directory (and its subdirectories). 
#
# First, we configure the "default" to be a very restrictive set of 
# features.  
#
<Directory />
    Options FollowSymLinks
    AllowOverride None
    Order deny,allow
    Deny from all
</Directory>

Allerdings hab ich keine Ahnung wie es aussehen sollte, damit es funktioniert, ich hab nun einfach den Block von <Directory "/Library/WebServer/Documents"> genommen und dies hier daraus gemacht:
Code:
<Directory />
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

Funktionieren tut es - aber ist es nun irgendwie unsicher?
This would allow clients to walk through the entire filesystem.
Heißt das in diesem Fall überall, wie "auch außerhalb von /Sites", oder überall wie "überall in /Sites"?
Falls ersteres muss ich das natürlich wieder auf das original setzen und für /Sites extra einen Block setzen, der einem den dortigen Zugang erlaubt.
Wenn dem so wäre, wie muss der Link im Directory-Tag aussehen, bzw von wo aus muss dieser starten?
Ich übernehme denn einfach den Inhalt der Directory-Tags die den Zugang zu DocumentRoot erlauben - außer ihr würdet das als gefährlich bzw. etwas anderes als besser erachten.

Apache zeigt ja ein schlichtes
Code:
 Order Deny,Allow
Deny from all
und
Code:
 Order Deny,Allow
Allow from all
 
...
Funktionieren tut es - aber ist es nun irgendwie unsicher?
...
Ja, das ist maximal unsicher.

Wie ich bereits sagte. Die htpd.conf ist ein Quell des Wissens.
u.a. ist da zu finden:
"This should be changed to whatever you set DocumentRoot to."
Und dann kommt das Verzeichnis, in dem Apache Zugriff haben soll.

Für Dich sind aber die user Verzeichnisse interessanter.
Mach mal folgendes im Terminal und poste das Ergebnis (am besten machst Du Dir gleich selbst ein paar Gedanken dazu ;)):
Code:
cat /private/etc/apache2/users/*.conf
 
Code:
<Directory "/Users/Guest/Sites/">
    Options Indexes MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>
<Directory "/Users/julian/Sites/">
    Options Indexes MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

Okay, immerhin kenne ich nun den Pfad =)
Nun stellen sich für mich noch folgende Fragen:
- Wenn ich, laut diesem Auszug und der Datei julian.conf, dort rein darf, wieso darf ich es irgendwie doch nicht?
- Wenn mich mein trügerisches Gespür nun nicht trügt, könnte ich den letzten Block in die httpd.conf einfügen... so rein theoretisch?
Ist es dann immer noch maximal unsicher? (bei so was bekomm ich doch glatt angst...)
 
...
- Wenn mich mein trügerisches Gespür nun nicht trügt, könnte ich den letzten Block in die httpd.conf einfügen... so rein theoretisch?
...
Du könntest auch (so rein theoretisch) meinem Rat folgen und Deine httpd.conf lesen.
Dann würdest Du nämlich irgenwann auf die Zeile stoßen:
Include /private/etc/apache2/extra/httpd-userdir.conf

Und natürlich würdest Du dann auf den Gedanken kommendiese Datei zu lesen und entdecken:
Include /private/etc/apache2/users/*.conf

Und an dieser Stelle fällt dir Beitrag 66 wieder ein und Du prüfst natürlich sofort, ob Deine Platte mit einem Dateisystem formatiert sein könnte, das Groß-/Kleinschreibung unterstützt. Außerdem checkst Du, ob mod_userdir geladen wird.
 
Oh... nein...
von j zu J und alles... funktioniert.
Die Freude darüber ist leicht getrübt, dennoch toll, danke dir!

Das (un)Lustige:
auf Groß- und Kleinschreibung hatte ich geachtet, vor meinem erneuten Hilferuf in diesem Thread, hatte alles klein sowie alles "normal", also wie es eben ist (Julian halt) ausprobiert, da es dadurch nicht besser wurde hatte ich das abgehakt. Dabei hatte ich weder den error_log noch access_log eingesehen, vllt. gab es zu dieser Zeit ja noch ein weiteres Problem.

Hach ja, funktioniert wieder =)
Bis zum nächsten Mal, danke!
(hoffentlich nicht =P)
 
Zurück
Oben Unten