Spamsicheres Mailformular
Peikert
- php
Um ein PHP-Script über den Browser ausführen zu können, muss ich Leserechte vergeben. Somit ist der Code aber nicht for search-robots geschützt. Ich frage mich also, wie Ihr das macht.
Hallo Peikert.
Um ein PHP-Script über den Browser ausführen zu können,
Ich bezweifle, dass du ein PHP-Script über einen Browser ausführen lässt.
muss ich Leserechte vergeben. Somit ist der Code aber nicht for search-robots geschützt.
Wie soll ein Suchrobot etwas indizieren, was _ausschließlich_ serverseitig _ausgeführt_ wird? Der Suchrobot kann höchstens das Endergebnis indizieren.
Ich frage mich also, wie Ihr das macht.
Wie wir _was_ machen?
Gruß, Ashura
Ich frage mich also, wie Ihr das macht.
Wie wir _was_ machen?
Welche Rechte sind für ein PHP-Script zu vergeben um es ausführen zu können (per Webbrowser einen socket zum Server zu öffnen, ihm per Post-Methode Variablen zu übergeben und auf Ausgaben zu warten) ? ICh denke, dass Leserechte für Searchrobots ausreichen um Emailadressen herauszufischen. Allerdings benötige ich für das ausführen des Scriptes anscheinend Leserechte. Das verstehe ich nicht.
Hallo Peikert.
Allerdings benötige ich für das ausführen des Scriptes anscheinend Leserechte. Das verstehe ich nicht.
Nein, CHMOD 644. Mehr ist nicht nötig, um PHP-Skripte ausführen zu können. Lediglich wenn in Dateien geschrieben werden soll, ist schlimmstenfalls CHMOD 777 erforderlich.
Gruß, Ashura
Kannst Du mir auch sagen, wieso unbedingt Leserechte zu vergeben sind ? Welche Verbindung stellen die Searchrobots (bzw. die Webbrowser) her ? Gibt es dazu eine technische Dokumentation ? Ich muss es genau wissen, da ich nun Spam bekomme (und vor dem Mailformular 2 Jahre lang nicht).
Gruß,
Peikert
Hallo Peikert.
Kannst Du mir auch sagen, wieso unbedingt Leserechte zu vergeben sind ?
Nunja, das Script soll doch sicherlich ausgeführt werden, oder?
Und dafür muss der Server das Recht haben, den Inhalt zu lesen.
Welche Verbindung stellen die Searchrobots (bzw. die Webbrowser) her ?
Sie senden eine Anfrage, die vom Server angenommen, verarbeitet und entsprechend der angefragten Resource zurückgegeben wird.
Ich muss es genau wissen, da ich nun Spam bekomme (und vor dem Mailformular 2 Jahre lang nicht).
Wie sieht dein Script aus? Wenn die Empfänger-Mailadresse direkt im PHP-Skript eingebaut wurde, kann sie AFAIK niemand auslesen.
Gruß, Ashura
Hallo Ashura.
Sie senden eine Anfrage, die vom Server angenommen, verarbeitet und entsprechend der angefragten Resource zurückgegeben wird.
Korrektur: ... entsprechend der angefragten Resource beantwortet wird.
Eine Anfrage wird im Normalfall beantwortet und nicht zurückgegeben.
Gruß, Ashura
Nunja, das Script soll doch sicherlich ausgeführt werden, oder?
Und dafür muss der Server das Recht haben, den Inhalt zu lesen.
Wieso braucht dann jeder Leserechte ? Es reicht doch, wenn der Webserver Leserechte hat. So müsste 640 reichen.
Wie sieht dein Script aus? Wenn die Empfänger-Mailadresse direkt im PHP-Skript eingebaut wurde, kann sie AFAIK niemand auslesen.
Dies ist der Fall. Allerdings kam nach Freischaltung eben unmittelbar der Spam.
Hallo Peikert.
Wieso braucht dann jeder Leserechte ? Es reicht doch, wenn der Webserver Leserechte hat. So müsste 640 reichen.
Das habe ich bereits erwähnt...
Dies ist der Fall. Allerdings kam nach Freischaltung eben unmittelbar der Spam.
Was für eine Freischaltung..?
Gruß, Ashura
Hallo Ashura.
Verzeihung... Ich schrieb 644 und nicht 640...
In der Tat ist 640 ausreichend.
Gruß, Ashura
Hallo,
Verzeihung... Ich schrieb 644 und nicht 640...
In der Tat ist 640 ausreichend.
Aber nur, wenn der Nutzer, der die Datei zum Parsen öffnen will, auch der Gruppe angehört, welche Eigentümer der Datei ist. Bei einer Datei mit chmod 640 darf der Eigentümer (user) die Datei lesen und in die Datei schreiben, die Eigentümer-Gruppe (group) darf nur lesen und die Anderen (others) dürfen nichts.
viele Grüße
Axel
Der Webserver ist ja in jedem Fall Gruppenmitglied. Deshalb kann ich doch davon ausgehen (um Zugriffe anderer Kunden zu vermeiden), dass 640 ausreichend ist. Ansonsten muss ich mich jetzt also an meinen Admin wenden. Vielen Dank an Euch !
Hallo,
Kannst Du mir auch sagen, wieso unbedingt Leserechte zu vergeben sind ?
Weil der PHP-Parser die Datei ja lesen muss, damit er sie parsen kann. Die file-permissions haben aber nichts mit Zugriffen von Außen zu tun, sondern erlaubt lediglich Nutzern, die im System des _Servers_ bekant sind, den Zugriff. Ein weit verbreiteter Irrtum ist, anzunehmen, das others (die Anderen) in den Permissions
ugo (user group others)
644 rw r r
würde wirklich _alle_ Anderen bedeuten. Es bedeutet nur alle Anderen dem Serversystem bekannten Nutzer.
Welche Verbindung stellen die Searchrobots (bzw. die Webbrowser) her ?
HTTP GET bzw. POST, also Requests über das HTTP-Protokoll. Das wiederum wird serverseitig von einem HTTP-Server realisiert und der liefert eigentlich nur die geparsten Ressourcen aus, also _keinen_ PHP-Quelltext. Wenn er das doch tut, was vorkommt, dann ist er falsch konfiguriert.
Gibt es dazu eine technische Dokumentation ?
http://www.w3.org/Protocols/rfc2616/rfc2616.html
Ich muss es genau wissen, da ich nun Spam bekomme (und vor dem Mailformular 2 Jahre lang nicht).
Kommt Deine EMail-Adresse als Klartext im Browser an oder steht die wirklich _nur_ in den PHP-Scripten?
Ansonsten kommt es natürlich auf die Vertrauenswürdigkeit Deines Hosters an. Die Admins von dem können _alle_ Dateien lesen, das könntest Du auch nicht mit chmod 000 verhindern ;-)). Und wenn die anderen Mitnutzer, also die andern Kunden des Hosters, Zugriff auf Dein user-home haben, dann können diese die Dateien mit 644 natürlich auch lesen.
viele Grüße
Axel