Personal Websharing / 403 forbidden

M

Malcolm

Aktives Mitglied
Thread Starter
Dabei seit
03.01.2004
Beiträge
513
Reaktionspunkte
0
Ich hab Personal Websharing aktiviert um meinen Rechner als Testserver zu nutzen bevor ich komplette Sites online stelle.
Nun musste ich feststellen das wen ich http://localhost/~malcolm/ test die "403 forbidden" Meldung kommt.
Was kann da sein?
 
nur allein den webserver über die systemeinstellungen>sharing zu aktivieren, macht noch keinen lauffähigen, sicheren und akzeptabelen webserver ...

vor dem start mußt du die konfigurations-dateien des servers auf optimale werte setzen, die den betrieb (wenn auch nur zum test) ernsthaft ermöglichen ...

dazu zählen:

/etc/httpd/httpd.conf

/etc/httpd/users/deinname

/dein-webroot-verzeichnis/.htaccess

es sind vorwiegend die zugriffsrechte in der .conf (verbote und gebote), sowie der daten und verzeichnisse (chmod) zu setzen.

werte werden stets in spitze klammern gesetzt und müssen wie HTML einen anfang und ein ende darstellen.

<Directory>
Options -Indexes
AllowOverride All
</Directory>

feste werte werden einfach notiert und nur durch ein tab oder leerzeichen von bedeutung und wert getrennt. der wert wird vorzugsweise in anführungszeichen gesetzt. nicht geltende werte werden mit einer route am anfang ausgeschaltet.

DocumentRoot "/Library/WebServer/Documents"

oder

# DocumentRoot "/Library/WebServer/Documents"


was es dabei alles noch zu bedenken gibt, welche werte wann gebraucht werden und was man noch so beachten muß, das lernt man nicht über einen beitrag in diesem forum. du solltest dich also selbst ein wenig mit dieser gesamten geschichte befassen, wenn du erfolgreich sein willst.

ein gut und komfortabel eingestellter webserver ist das a und o um webprojekte in html, cgi und php + mysql anzeigen und ablaufen zu lassen. nur mal eben den webserver einschalten und gucken ob da zufällig was passiert - ist nicht.

das bedienungsfreudige einschalten des webservers über die systemeinstellung>sharing täuscht hier leider regelrecht über die qualvolle manuelle einrichtung hinweg. das eine hat wirklich nichts mit dem anderen zu tun ...
 
Malcolm schrieb:
Ich hab Personal Websharing aktiviert um meinen Rechner als Testserver zu nutzen bevor ich komplette Sites online stelle.
Nun musste ich feststellen das wen ich http://localhost/~malcolm/ test die "403 forbidden" Meldung kommt.
Was kann da sein?
Das sollte so klappen (und zwar ohne Änderung in der Konfiguration).
Wie sieht es aus, wenn Du 'localhost' durch '127.0.0.1' ersetzt.
Sollte zwar keinen Unterschied machen, aber testen kannst Du es mal.

Außerdem kannst Du mal checken (posten), was in '/var/log/httpd/error_log' für Fehlermeldungen erscheinen und welche Rechte bei '~/Sites/' gesetzt sind.
 
Du willst mir doch nicht erzählen das ein normaler user noch in der .htaccess und der httpconf rumfummeln muss. Da würde die Option "Personal WebSharing aktivieren" absolut null sinn machen.

Ich brauch auch keinen sicheren Webserver da eh keiner drauf kommt weil vorher der Router alles abfängt.

Die Dateirechte sind in Ordnung. Der normale Webserver funktioniert auch problemlos...nur ist es mir lästig immer alles erst nach Library/... zu kopieren.
 
[Thu Apr 14 20:18:21 2005] [error] [client 127.0.0.1] (13)Permission denied: access to /~Malcolm/Soundgarden failed because search permissions are missing on a component of the path


Checks nicht...bin mir sicher da ging damals mal.
 
Es ist anscheinend ein Rechteproblem.

Alle Dateien die Du über den Webserver aufrufen möchtest, benötigen mindesten die Rechte -r--r--r--
Alle Verzeichnisse in denen Dateien liegen benötigen -r-xr-xr-x.
Sieht so aus, als ob das für den Ordner '~Malcolm/Soundgarden' nicht zutrifft.

Falls Du mit der Änderung von Rechten nicht klar kommst, melde Dich noch mal.
 
@Malcolm

wenn du meinst ...

zumindest hätte ich den fehler bei mir bereits gefunden ...

erzählen will ich dir hier gar nichts, nur wenn du die einzelnen zusammenhänge nicht verstehst (verstehen willst), was nützt dir ein webserver wenn du damit nicht umgehen kannst?

wenn man nicht weiß, daß sich ein eintrag in der datei /etc/httpd/users/du befinden muß, der da lautet:

<Directory "/Users/du/Sites/">
Options -Indexes
AllowOverride All
Order Deny,Allow
Deny from All
Allow from 192.168
Allow from 127.0
Allow from localhost
</Directory>

und weiteres ...

... dann kann man eben einen webserver nicht so ohne weiteres bedienen und muß sich dazu vorher eben einiges wissen aneignen.

hast du überhaupt einen index bestimmt? den DirectoryIndex? da muß angegeben werden, was für eine startdatei im normalfall oder im notfall immer unbedingt geladen werden muß. überprüfe also ob du eines davon angegeben hast, die datei aber vielleicht nicht in deinem webroot liegt, ganz einfach. für den webserver ist das ein 401-fehler.
 
Zuletzt bearbeitet:
iLover schrieb:
...wenn man nicht weiß, daß sich ein eintrag in der datei /etc/httpd/users/du befinden muß, der da lautet:

[snipped]

und weiteres ...

... dann kann man eben einen webserver nicht so ohne weiteres bedienen und muß sich dazu vorher eben einiges wissen aneignen.
...
So eng würde ich das nicht sehen.
Der Webserver ist von Apple so vorkonfiguriert, dass auch nicht-Spezialisten damit arbeiten können.
Die von Dir genannten Einstellungen sind definitiv nicht zwingend erforderlich.
Natürlich hat man mit wachsendem Fachwissen auch mehr Möglichkeiten, aber um statische Webseiten zu betrachten genügt es, diese im Sites-Ordner zu speichern und die Rechte entsprechend zu setzen (Lesen für alle bei Dateien, Lesen und Auflisten für alle bei Verzeichnissen)

iLover schrieb:
...hast du überhaupt einen index bestimmt? den DirectoryIndex? da muß angegeben werden, was für eine startdatei im normalfall oder im notfall immer unbedingt geladen werden muß. überprüfe also ob du eines davon angegeben hast, die datei aber vielleicht nicht in deinem webroot liegt, ganz einfach. für den webserver ist das ein 401-fehler.
Das ist in mehrerlei Hinsichten falsch.
Vielleicht solltest Du Dir auch noch ein wenig Wissen aneignen :D.
 
Zuletzt bearbeitet:
@maceis

nun das auch noch ...

wenn ich angebe, daß

DirectoryIndex index.html index.htm,

dann wird entweder die erste oder zweite datei geladen, unbedingt. ist aber keine von beiden vorhanden, kann der server diese nicht laden und der zugriff wird aus sicherheitsgründen verweigert, weil ja

Options -Indexes (Index anzeigen verboten)

das macht dann Fehler 401 oder von mir aus 403, was ist da jetzt falsch dran? und dann noch aus mehrerlei hinsicht?
 
Zuletzt bearbeitet:
iLover schrieb:
...
dann wird entweder die erste oder zweite datei geladen, unbedingt. ist aber keine von beiden vorhanden, kann der server diese nicht laden und der zugriff wird aus sicherheitsgründen verweigert, weil ja

Options -Indexes (Index anzeigen verboten)
Das ist Deine persönliche Einstellung, die von der Standardkonfiguration abweicht.
iLover schrieb:
...was ist da jetzt falsch dran? und dann noch aus mehrerlei hinsicht?
Die von Dir als zwingend angegebenen Änderungen sind definitiv nicht erforderlich. Im Grunde ist keinerlei Fachwissen über Webserver erforderlich um das zu erreichen, was der OP im Augenblick wohl möchte.
iLover schrieb:
... hast du überhaupt einen index bestimmt? den DirectoryIndex? da muß angegeben werden...
Muss nicht; in der Defaultkonfiguration von Apple steht 'Options Indexes'
iLover schrieb:
..., was für eine startdatei im normalfall oder im notfall...
Mit Notfall hat das nichts zu tun; das ist eine Komfortfunktion.
iLover schrieb:
...immer unbedingt geladen werden muß. überprüfe also ob du eines davon angegeben hast,...
In der Standarkonfiguration ist das bereits der Fall.
iLover schrieb:
...die datei aber vielleicht nicht in deinem webroot liegt, ganz einfach....
Die muss zur Benutzung nicht im DocumentRoot sondern im aufgerufenen Verzeichnis liegen. Abgesehen davon, kann sie auch fehlen.
iLover schrieb:
...für den webserver ist das ein 401-fehler.
401 ist ein "Unauthorized"
 
Zuletzt bearbeitet:
Für den fortgeschrittenen user ist es schon wichtig die httpd.conf zu kennen. Wie maceis aber richtig schreibt, ist die Standardvorgabe von Apple bereits fertig für die Usershares konfiguriert. Das ist heutzutage bei jedem LINUX Standard!

Forbidden/403 weist m.E. eindeutig auf ein Rechteproblem im Filesystem hin. Kann das definitiv ausgeschlossen werden ( am besten durch Gegenbeweis mit eine anderen Datei ims leben Verzeichnis - z.B. .PHP statt .html), dann würde ich auch nach einer veränderten httpd.conf suchen. Selbst wer den Inhalt nicht kennt, kann die httpd.conf.default auf die httpd.conf kopieren und müßte so wieder arbeiten können. It's apple ;)
 
Eben. Ich bin nicht ganz "blöd" wenns um Webserver geht. Ich habe sogar alles freigegeben "rwx" (bin a eh allein hier und von aussen kommt keiner ran) aber es geht nicht. In keinem der Unterverzeichnisse. Index is alles da...ich weiss mit meinem Latein echt nicht mehr weiter.
 
Hallo Malcom
Ich arbeite zur Zeit mit den Apache Webserver und brauchte nichts konfigurieren, ausser eben Personsl Websharing zu aktivieren. Die Websites läßt sich dann anschauen unter:( http://192.168.0.4/username/index.html). Bei anderen kann statt der letzten Zahl 4 auch eine andere stehen , vieleicht 1, 2 oder 3?. Bei dieser schon vorhandenen Konfiguration wird die Startseite mit index.html angegeben - das ist dann der Ordner Site (bei mir steht: Web-Site). Also versuchs mal vieleicht klappt das ja.
Gruß Gerdamai
 
Ach ja,Statt username muss der Name eingegeben werden, der in Sharing neben Gerätename steht, mal eingegeben wurde.
Gruß Gerdamai
 
Mr Laber Laber

Ich find's immer wieder klasse, wenn Großmäuler viel erzählen wollen, um dann von kundigen Mac-Usern gehörig den Arsch versohlt zu bekommen.
Das kommt mir aus Win-Foren bekannt vor :D
 
index.html, index.htm index oho is vollkommen Schnuppe. Ist auch alles vorhanden. Rechte sind da. Localhost, 127.0.0.1 oder 192.168.0.2 is auch egal. Komm hier irgendwie zu keinem Ergebnis.
Vor allem weil ich es mir bei Apple nicht vorstellen kann das da configfiles geändert werden müssen.
 
Malcolm schrieb:
... nicht vorstellen kann das da configfiles geändert werden müssen.

da hast du definitiv recht. die configs brauchst du nur, wenn du *mehr* machen willst.

ich würd in so einem fall folgendes versuchen: websharing ausmachen, neustart, als admin anmelden, websharing anmachen, als user anmelden, nochmal testen und zwar beide möglichkeiten:

//localhost/ und //localhost/~user/

evtl. könntest du auch einen neuen ordner soundgarden anlegen (den alten kurz umbenennen)

wie schon gesagt, ein versuch, aber vielleicht hilfts ...

ps. muss allerdings dazu sagen, dass ich schon eine ganze weile nicht mehr das eingebaute websharing (apache1.*) verwende. bin inzwischen auf den zweier apache gewechselt >> sig ;).
 
Deaktiviert - Aktiviert nix hat sich geändert.

Der normale Webserver funktioniert problemlos das ist ja das komische. Und an dem Ordner Soundgarden kanns auch nicht liegen. Es geht mit keinem der Unterordner. Nicht mal die index.htm im Root läuft.
 
Dann würde ich Dir vorschlagen einen neuen User anzulegen und es mit diesem zu versuchen.
Wenn es da klappt, kopierst Du einfach (mit sudo cp -p) das Sites-Verzeichnis von dem neuen zum vorhandenen User und änderts Benutzer- und Gruppenzugehörigkeit.

HTH
 
Zurück
Oben Unten