Frage an die PHP-Experten...
- Fightmeyer
- Riesiger Roboteraffe
- Beiträge: 7309
- Registriert: 16.12.2004, 22:51
- Wohnort: Potsdam
- Kontaktdaten:
Re: Frage an die PHP-Experten...
Vielleicht kann jemand was mit dieser Fehlermeldung anfangen...
Klickt mal auf den Link! Da müsste eigentlich ne leere schwarze Seite kommen.
http://www.snoozen.de/leer2.php
Das hier mit ner html funktioniert dagegen.
http://www.snoozen.de/xampp.html
Klickt mal auf den Link! Da müsste eigentlich ne leere schwarze Seite kommen.
http://www.snoozen.de/leer2.php
Das hier mit ner html funktioniert dagegen.
http://www.snoozen.de/xampp.html
- elevar
- Logik-Lord
- Beiträge: 1411
- Registriert: 08.08.2007, 20:04
Re: Frage an die PHP-Experten...
Meinst du diese Fehlermeldung
Ist die Datei leer2.php denn in genau diesem Verzeichnis, also in /fastcgiphp/php-fcgi-starter/ ?Der Webserver hat geschrieben:The requested URL /fastcgiphp/php-fcgi-starter/leer2.php was not found on this server.
Well, it all started on Scabb Island. Some of my admiring fans had pressured me into telling my LeChuck evaporating story once again...
- Fightmeyer
- Riesiger Roboteraffe
- Beiträge: 7309
- Registriert: 16.12.2004, 22:51
- Wohnort: Potsdam
- Kontaktdaten:
Re: Frage an die PHP-Experten...
Ja, diese Meldung meine ich.elevar hat geschrieben:Meinst du diese FehlermeldungIst die Datei leer2.php denn in genau diesem Verzeichnis, also in /fastcgiphp/php-fcgi-starter/ ?Der Webserver hat geschrieben:The requested URL /fastcgiphp/php-fcgi-starter/leer2.php was not found on this server.
Und Nein. Dieses Verzeichnis gibt es bei mir auch gar nicht. Keine Ahnung, wo er sich das hermelkt.
Komisch ist, dass es bei der HTML-Datei, die im gleichen Ordner liegt geht.
- neon
- Adventure-Treff
- Beiträge: 30023
- Registriert: 08.07.2004, 10:55
- Wohnort: Wiesbaden
- Kontaktdaten:
Re: Frage an die PHP-Experten...
Hast Du vielleicht irgendeinen Standardpfad nicht angepasst?
"Ich habe mich so gefühlt, wie Sie sich fühlen würden, wenn sie auf einer Rakete sitzen, die aus zwei Millionen Einzelteilen besteht - die alle von Firmen stammen, die bei der Regierungsausschreibung das niedrigste Angebot abgegeben haben"
- John Glenn nach der ersten Erdumrundung 1962
- John Glenn nach der ersten Erdumrundung 1962
- Fightmeyer
- Riesiger Roboteraffe
- Beiträge: 7309
- Registriert: 16.12.2004, 22:51
- Wohnort: Potsdam
- Kontaktdaten:
Re: Frage an die PHP-Experten...
Welcher könnte das sein?
Wenn ich mich via FTP mit meinem Webspace verbinde, dann sehe ich dort einige vom Anbieter vordefinierte Ordner und einen Ordner namens "HTML". Dort liegt die index.html vom Anbieter drin. (die wird angezeigt, wenn man einfach nur http://www.snoozen.de eingibt)
Also das ist anscheinend der Ordner, auf den die Domain gelinkt ist.
In den gleichen Ordner hab ich nun die links2.php reinkopiert und mit der klappts nicht.
Ich bin eigentlich davon ausgegangen, dass das ganze php-geraffel im Hintergrund vorkonfiguriert ist. Ich hab doch keine blassen von dem Kram...
Wenn ich mich via FTP mit meinem Webspace verbinde, dann sehe ich dort einige vom Anbieter vordefinierte Ordner und einen Ordner namens "HTML". Dort liegt die index.html vom Anbieter drin. (die wird angezeigt, wenn man einfach nur http://www.snoozen.de eingibt)
Also das ist anscheinend der Ordner, auf den die Domain gelinkt ist.
In den gleichen Ordner hab ich nun die links2.php reinkopiert und mit der klappts nicht.
Ich bin eigentlich davon ausgegangen, dass das ganze php-geraffel im Hintergrund vorkonfiguriert ist. Ich hab doch keine blassen von dem Kram...

- neon
- Adventure-Treff
- Beiträge: 30023
- Registriert: 08.07.2004, 10:55
- Wohnort: Wiesbaden
- Kontaktdaten:
Re: Frage an die PHP-Experten...
Ich auch nicht, nur ist das der typische Fehler, wenn man plötzlich auf einem Pfad landet, den man vorher noch nie gesehen hat.
"Ich habe mich so gefühlt, wie Sie sich fühlen würden, wenn sie auf einer Rakete sitzen, die aus zwei Millionen Einzelteilen besteht - die alle von Firmen stammen, die bei der Regierungsausschreibung das niedrigste Angebot abgegeben haben"
- John Glenn nach der ersten Erdumrundung 1962
- John Glenn nach der ersten Erdumrundung 1962
- Fightmeyer
- Riesiger Roboteraffe
- Beiträge: 7309
- Registriert: 16.12.2004, 22:51
- Wohnort: Potsdam
- Kontaktdaten:
Re: Frage an die PHP-Experten...
Na dann schreib ich das mal bei denen ins Forum... mal sehen, was der Support sagt.
Fängt ja schon mal geil an...
EDIT: So wie es aussieht, ist da bei der Webspaceeinrichtung tatsächlich etwas falschgemacht worden. Der Support kümmert sich drum...
Fängt ja schon mal geil an...
EDIT: So wie es aussieht, ist da bei der Webspaceeinrichtung tatsächlich etwas falschgemacht worden. Der Support kümmert sich drum...
- Fightmeyer
- Riesiger Roboteraffe
- Beiträge: 7309
- Registriert: 16.12.2004, 22:51
- Wohnort: Potsdam
- Kontaktdaten:
Re: Frage an die PHP-Experten...
Hallo Leute,
ich hatte hier ziemlich weit am Anfang des Threads mal die Frage gestellt, ob es eine Möglichkeit gibt, ein Verzeichnis so zu schützen, dass man nicht mehr direkt darauf verlinken kann, aber trotzdem mittels php-Script darauf zugreifen kann.
Ich habe jetzt eine Lösung in den Weiten des netzes gefunden und muss nun noch ein bißchen Finetuning betreiben.
Sachverhalt:
Ich habe einen Ordner, mit Unterordnern, in denen sich ausschließlich jpg-Dateien befinden.
Diese werden in einer Gallerie auf meiner Homepage angezeigt. Funzt so weit. Allerdings will ich das nur für Leute sichtbar haben, die sich auch auf meiner Homepage via php-Session angemeldet haben.
Das habe ich nun folgendermaßen gelöst. Den besagten Ordner habe ich mittels .htaccess geschützt. Das Aufrufen der Bilder passiert nun in meiner Homepage nicht mehr einfach nur mittels <img>-Tag, sondern über ein Streaming durch eine php-Datei.
Der Code in der bild.php, die das Bild dann letztendlich streamt, sieht so aus:
Ergebnis:
Man kann nicht mehr direkt auf das Bild linken (da ja .htaccess-Schutz), sondern kann es nur noch über dieses Script aufrufen. Und das wiederum wird nur bei aktiver Session ausgeführt.
Nun möchte ich aber das ganze noch etwas absichern. Wie müsste der Code aussehen, dass nur jpg-Dateien gelesen werden und falls es sich um eine andere oder fehlerhafte Datei handelt, soll ein "Standardfehlerbild" geladen werden?
Kann mir da jemand von euch helfen?
Schon mal danke vorab!
ich hatte hier ziemlich weit am Anfang des Threads mal die Frage gestellt, ob es eine Möglichkeit gibt, ein Verzeichnis so zu schützen, dass man nicht mehr direkt darauf verlinken kann, aber trotzdem mittels php-Script darauf zugreifen kann.
Ich habe jetzt eine Lösung in den Weiten des netzes gefunden und muss nun noch ein bißchen Finetuning betreiben.
Sachverhalt:
Ich habe einen Ordner, mit Unterordnern, in denen sich ausschließlich jpg-Dateien befinden.
Diese werden in einer Gallerie auf meiner Homepage angezeigt. Funzt so weit. Allerdings will ich das nur für Leute sichtbar haben, die sich auch auf meiner Homepage via php-Session angemeldet haben.
Das habe ich nun folgendermaßen gelöst. Den besagten Ordner habe ich mittels .htaccess geschützt. Das Aufrufen der Bilder passiert nun in meiner Homepage nicht mehr einfach nur mittels <img>-Tag, sondern über ein Streaming durch eine php-Datei.
Code: Alles auswählen
<img src=scripte/bild.php?bild=../geschützterOrdner/bild1.jpg"/>
Der Code in der bild.php, die das Bild dann letztendlich streamt, sieht so aus:
Code: Alles auswählen
$datei=fopen($_GET['bild'],r);
echo fread($datei, filesize($datei));
fclose($datei);
Man kann nicht mehr direkt auf das Bild linken (da ja .htaccess-Schutz), sondern kann es nur noch über dieses Script aufrufen. Und das wiederum wird nur bei aktiver Session ausgeführt.
Nun möchte ich aber das ganze noch etwas absichern. Wie müsste der Code aussehen, dass nur jpg-Dateien gelesen werden und falls es sich um eine andere oder fehlerhafte Datei handelt, soll ein "Standardfehlerbild" geladen werden?
Kann mir da jemand von euch helfen?
Schon mal danke vorab!
- elevar
- Logik-Lord
- Beiträge: 1411
- Registriert: 08.08.2007, 20:04
Re: Frage an die PHP-Experten...
Das würde ich wieder die Mottenkiste mit den regulären Ausdrücken aufmachen:Der String '/^(.*?)\.(jpg|jpeg)$/i' testet, ob die Datei mit .jpg oder .jpeg aufhört.
Code: Alles auswählen
if ( preg_match('/^(.*?)\.(jpg|jpeg)$/i', $_GET['bild']) && file_exists($_GET['bild']) ) {
// Zeige Bild
}
else {
// Zeige Fehlermeldung
}
- Das ^ markiert den Anfang des zu testenden Strings.
- (.*?) gibt eine beliebige Zeichenfolge an (so wenig wie möglich).
- Der Punkt . muss mit einem \ "escaped" werden, da es sich beim Punkt um ein Zeichen handelt, das in der Syntax sonst eine eigene Bedeutung hat.
- (jpg|jpeg) bedeutet jpg oder jpeg
- Der Modifikator i ganz am Ende bedeutet, dass es nicht auf Groß- und Kleinschreibung ankommt.
- Das $ markiert das Ende des zu testenden Strings.
Well, it all started on Scabb Island. Some of my admiring fans had pressured me into telling my LeChuck evaporating story once again...
- Fightmeyer
- Riesiger Roboteraffe
- Beiträge: 7309
- Registriert: 16.12.2004, 22:51
- Wohnort: Potsdam
- Kontaktdaten:
Re: Frage an die PHP-Experten...
Danke. Das probier ich heute Abend mal aus. Ich werd die Prfung wahrscheinlich noch mit ner Funktion verknüpfen, die testet, ob es sich um eine gültige Bilddatei handelt, wenn die Endung stimmt. (mir ist so, als ob es da auch eine php-Funktion für gibt)
Es könnte ja auch ne txt einfach in eine jpg umbenannt worden sein...
Muss dann halt nur noch sehen, wie performant das Ganze dann noch ist.
Auf jeden Fall komm ich dann bei meiner Seite endlich von der lästigen htaccess-Authentifizierung weg. Die ist ja für den Anwender nicht sehr ansprechend und für die Rechteverwaltung auf der eigentlichen Seite auch nicht sehr komfortabel.
EDIT:Sehe ich das richtig, dass ich den Teil hier: (jpg|jpeg) auch problemlos um andere Dateiendungen erweitern kann? Also z.B. (jpg|jpeg|bmp|gif)
Es könnte ja auch ne txt einfach in eine jpg umbenannt worden sein...
Muss dann halt nur noch sehen, wie performant das Ganze dann noch ist.
Auf jeden Fall komm ich dann bei meiner Seite endlich von der lästigen htaccess-Authentifizierung weg. Die ist ja für den Anwender nicht sehr ansprechend und für die Rechteverwaltung auf der eigentlichen Seite auch nicht sehr komfortabel.
EDIT:Sehe ich das richtig, dass ich den Teil hier: (jpg|jpeg) auch problemlos um andere Dateiendungen erweitern kann? Also z.B. (jpg|jpeg|bmp|gif)
- elevar
- Logik-Lord
- Beiträge: 1411
- Registriert: 08.08.2007, 20:04
Re: Frage an die PHP-Experten...
Das siehst du genau richtigFightmeyer hat geschrieben:EDIT:Sehe ich das richtig, dass ich den Teil hier: (jpg|jpeg) auch problemlos um andere Dateiendungen erweitern kann? Also z.B. (jpg|jpeg|bmp|gif)

Well, it all started on Scabb Island. Some of my admiring fans had pressured me into telling my LeChuck evaporating story once again...
Re: Frage an die PHP-Experten...
Hier noch ein Tipp von mir:
http://httpd.apache.org/docs/current/mo ... write.html
Mit diesem Modul kann man den Aufruf der Bilddateien erleichtern. Anstatt sowas:
... wäre dann sowas möglich:
Man verweist quasi auf eine Datei dies es nicht gibt (da das Verzeichnis "geschützterOrdner" hier nicht als Unterverzeichnis existiert). Dadurch verschleiert man auch noch mehr die Herkunft der Dateien. Damit jetzt aber auch das Script aufgerufen wird, kann man dann in der htaccess folgendes schreiben:
Und da gibts noch ein Vorteil: "geschützterOrdner\test.txt" könnte nicht aufgerufen werden, da die Regel nicht für Dateien dieser Endung greift.
http://httpd.apache.org/docs/current/mo ... write.html
Mit diesem Modul kann man den Aufruf der Bilddateien erleichtern. Anstatt sowas:
Code: Alles auswählen
<img src="/scripte/bild.php?bild=../geschützterOrdner/bild1.jpg"/>
Code: Alles auswählen
<img src="/geschützterOrdner/bild1.jpg"/>
Code: Alles auswählen
RewriteEngine on
RewriteRule ^geschützterOrdner/(\w\.(jpg|gif|png))$ scripte/bild.php?bild=../geschützterOrdner/$1
- Fightmeyer
- Riesiger Roboteraffe
- Beiträge: 7309
- Registriert: 16.12.2004, 22:51
- Wohnort: Potsdam
- Kontaktdaten:
Re: Frage an die PHP-Experten...
Das ist ne gute Idee. Zumal ich dann auch meinen HTML/PHP-Quelltext nicht anpassen muss. Danke.
Muss nur mal schauen, ob dieses Modul auf dem Webserver installiert ist. Aber ich denke mal schon...
Muss nur mal schauen, ob dieses Modul auf dem Webserver installiert ist. Aber ich denke mal schon...
Re: Frage an die PHP-Experten...
Hier eine kleine Korrektur von mir:
Hinter dem \w muss natürlich ein + stehen. Sonst würde die Regel ja nur bei Dateinamen greifen, die einen Buchstaben lang sind. Das * wäre nebenbei bemerkt auch nicht korrekt, denn dieser Wiederholungsoperator würde auch Dateinamen zulassen die kein Zeichen enthalten, also .jpg (ohne irgendwas davor) wäre demnach auch gültig.
Das + ist hier präziser, da es mindestens ein Zeichen voraussetzt.
Code: Alles auswählen
RewriteRule ^geschützterOrdner/(\w+\.(jpg|gif|png))$ scripte/bild.php?bild=../geschützterOrdner/$1
Das + ist hier präziser, da es mindestens ein Zeichen voraussetzt.
- Fightmeyer
- Riesiger Roboteraffe
- Beiträge: 7309
- Registriert: 16.12.2004, 22:51
- Wohnort: Potsdam
- Kontaktdaten:
Re: Frage an die PHP-Experten...
Das sieht bei mir jetzt folgendermaßen aus:
Aber das klappt irgendwie nicht. Vielleicht sollte ich noch darauf hinweisen, dass ich in dem geschützen Ordner noch Unterordner habe und da die eigentlichen Bilder drinliegen. Aber wenn ich die Zeile richtig interpretiere müsste das doch trotzdem klappen, oder?
Ich hab aktuell im darüberliegenden Ordner auch noch ne htaccess. Kommen die sich eventuell in die Quere?
Code: Alles auswählen
RewriteEngine on
RewriteRule ^alben/(\w+\.(jpg|gif|png))$ ../system/bildload.php?bild=../alben/$1
Ich hab aktuell im darüberliegenden Ordner auch noch ne htaccess. Kommen die sich eventuell in die Quere?