htaccess via php
htaccess via php
Moin, mal noch ne Frage, ich hab ein Verzeichniss, dieses ist via .htaccess und .htpasswd gesichert. Wie bekomm ich es jetzt hin, das wenn eine php Session gesetzt ist der User nun Zugriff darauf bekommt?(indem er sich via PHP Formular einloggt) ?
Re: htaccess via php
Hängt davon ab was du machen möchtest. Eine Sperrung mit .htaccess beeinflusst ja nicht den Zugriff mit PHP. Du kannst also zb mit PHP die Dateien auslesen und dann an den Benutzer ausgeben. Was du nicht machen kannst, ist das du sozusagen die Sperrung mit PHP aufhebst.
"Make it idiot-proof and someone will invent an even better idiot." (programmers wisdom)
OpenGL Tutorials und vieles mehr rund ums Programmieren: http://www.tomprogs.at
OpenGL Tutorials und vieles mehr rund ums Programmieren: http://www.tomprogs.at
Re: htaccess via php
Funktioniert dann auch die opendir() funktion? Dürfte ja oder? php wird ja unabhänig vom apache geparst...Kerli hat geschrieben:Hängt davon ab was du machen möchtest. Eine Sperrung mit .htaccess beeinflusst ja nicht den Zugriff mit PHP. Du kannst also zb mit PHP die Dateien auslesen und dann an den Benutzer ausgeben. Was du nicht machen kannst, ist das du sozusagen die Sperrung mit PHP aufhebst.
- Xin
- nur zu Besuch hier
- Beiträge: 8862
- Registriert: Fr Jul 04, 2008 11:10 pm
- Wohnort: /home/xin
- Kontaktdaten:
Re: htaccess via php
Probiere es doch aus ^^Jside hat geschrieben:Funktioniert dann auch die opendir() funktion? Dürfte ja oder? php wird ja unabhänig vom apache geparst...Kerli hat geschrieben:Hängt davon ab was du machen möchtest. Eine Sperrung mit .htaccess beeinflusst ja nicht den Zugriff mit PHP. Du kannst also zb mit PHP die Dateien auslesen und dann an den Benutzer ausgeben. Was du nicht machen kannst, ist das du sozusagen die Sperrung mit PHP aufhebst.
Es sollte aber keine Probleme geben, da htaccess den Access für HTTP einschränkt. PHP ist aber ein lokal laufendes Programm, quasi der Apache persönlich. Dürfte keine Probleme geben.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Re: htaccess via php
ich versuche grad ein Problem mit direkten Zugriff auf Grafiken auf meinem WebServer in den Griff zu bekommen und bin bei der Suche auf diesen Hinweis gestossen, denn genau hier liegt mein Problem.Kerli hat geschrieben:.... Eine Sperrung mit .htaccess beeinflusst ja nicht den Zugriff mit PHP. ....
In der htaccess sperre ich den Zugriff mit dem Eintrag
Code: Alles auswählen
<FilesMatch \.(png|gif|jpg|jpeg|pdf)$>
Order deny,allow
Deny from all
</FilesMatch>
Code: Alles auswählen
echo "<div align='right' style='border-top-width:1px;border-top-color:Gainsboro;'>".
"<a href='javascript:funOrder_Company(\"". $sFilter ."\")'><img src='images/pfeil_oben.gif' border=0></a>".
"</div>";
erst mit den Zusatz
allow from localhost
in der .htaccess sehen die Seiten wieder "sauber" aus.
Also, entweder stimmt die Aussage oben nicht so ganz oder es muss noch an anderer Stelle zusätzlich konfiguriert werden (diese Stelle wuerde dann brennend interessieren).
Achsoja... habe diesen Effekt übrigens sowohl auf meinem Ubuntu mit Apache 2.2 als auch unter Windows mit xampp.
- Xin
- nur zu Besuch hier
- Beiträge: 8862
- Registriert: Fr Jul 04, 2008 11:10 pm
- Wohnort: /home/xin
- Kontaktdaten:
Re: htaccess via php
Du verbietest allen den Zugriff auf die Dateien. (Warum?)
Wenn Du nun eine Grafik mit <img> einbindest, dann will der Browser die Datei vom Server abrufen, was Du aber verboten hast. Du könntest nun einen Umweg über PHP gehen, also ein PHP-Skript, dass Du aufrufen darfst, dass dann eine Grafik sendet. src bei <img> wäre dann etwas wie z.B. fetchpic.php?id=4711.
Aber wozu der Aufwand?
Wenn Du nun eine Grafik mit <img> einbindest, dann will der Browser die Datei vom Server abrufen, was Du aber verboten hast. Du könntest nun einen Umweg über PHP gehen, also ein PHP-Skript, dass Du aufrufen darfst, dass dann eine Grafik sendet. src bei <img> wäre dann etwas wie z.B. fetchpic.php?id=4711.
Aber wozu der Aufwand?
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Re: htaccess via php
Du liest die Grafiken ja nicht mit PHP aus sondern gibst dem Browser nur die Adresse an der er die Grafik findet. Die Grafik mit PHP öffnen wäre zb mit file_get_contents() oder ähnlichen Funktionen.C@mper hat geschrieben:Klappt gut, direkter Zugriff nicht mehr möglich. ABER... Nun werden meine Grafiken in den Html Seiten, welche ich mit PHP erzeuge, ebenfalls nicht mehr angezeigt.
"Make it idiot-proof and someone will invent an even better idiot." (programmers wisdom)
OpenGL Tutorials und vieles mehr rund ums Programmieren: http://www.tomprogs.at
OpenGL Tutorials und vieles mehr rund ums Programmieren: http://www.tomprogs.at
Re: htaccess via php
Xin hat geschrieben:Wenn Du nun eine Grafik mit <img> einbindest, dann will der Browser die Datei vom Server abrufen, was Du aber verboten hast. Du könntest nun einen Umweg über PHP gehen, also ein PHP-Skript, dass Du aufrufen darfst, dass dann eine Grafik sendet. src bei <img> wäre dann etwas wie z.B. fetchpic.php?id=4711.
Autsch... Danke, darüber hatte ich nicht nachgedacht.Kerli hat geschrieben:Du liest die Grafiken ja nicht mit PHP aus sondern gibst dem Browser nur die Adresse an der er die Grafik findet. Die Grafik mit PHP öffnen wäre zb mit file_get_contents() oder ähnlichen Funktionen.
Primär geht es nicht um Grafiken, sondern um Dokumente, Maps etc. (mit Grafiken hatte ich nur getestet). Diese möchte ich nur registrierten und eingeloggten Usern zugänglich machen. Wenn ich denen irgendwann mal das Login entziehe und diese sich die URL gemerkt haben, könnten sie trotzdem weiter direkt drauf zugreifen.Xin hat geschrieben: Aber wozu der Aufwand?
Dachte halt, mit 'nem htaccess wäre das mal eben kurz gemacht... werde das nun über ein PHP Script und Verzeichnissen ausserhalb des Document Root lösen.
Danke.
Re: htaccess via php
Einfacher wäre es wenn du diese Dokumente einfach in einen eigenen Ordner packst und dort zb folgende .htaccess Datei ablegst:C@mper hat geschrieben:Primär geht es nicht um Grafiken, sondern um Dokumente, Maps etc. (mit Grafiken hatte ich nur getestet). Diese möchte ich nur registrierten und eingeloggten Usern zugänglich machen.
Code: Alles auswählen
AuthUserFile /home/sites/www.tomprogs.at/web/.htpasswd
AuthGroupFile /home/sites/www.tomprogs.at/web/.group
AuthName Documents
AuthType Basic
require user admin tom user123
"Make it idiot-proof and someone will invent an even better idiot." (programmers wisdom)
OpenGL Tutorials und vieles mehr rund ums Programmieren: http://www.tomprogs.at
OpenGL Tutorials und vieles mehr rund ums Programmieren: http://www.tomprogs.at
Re: htaccess via php
Danke für den Tip Kerli,
aber das ganze sollte ja kein eigenes Login bekommen, sondern Bestandteil meiner bestehenden Anwendung werden, in der die Files bereits für jeden gelistet sind aber nur registrierten Benutzern zum dl angeboten werden.
Hab's nun aber so gelöst, dass ich die Files aus dem Web Bereich der Platte verschoben habe (diese sind nun auf jeden Fall über Web nach aussen nicht mehr sichtbar/erreichbar) und dann in meiner Html File Liste einen Button mit einer Funktion für den Download anbiete. Dahinter steckt dann lediglich eine header() + readfile() Funktion.
aber das ganze sollte ja kein eigenes Login bekommen, sondern Bestandteil meiner bestehenden Anwendung werden, in der die Files bereits für jeden gelistet sind aber nur registrierten Benutzern zum dl angeboten werden.
Hab's nun aber so gelöst, dass ich die Files aus dem Web Bereich der Platte verschoben habe (diese sind nun auf jeden Fall über Web nach aussen nicht mehr sichtbar/erreichbar) und dann in meiner Html File Liste einen Button mit einer Funktion für den Download anbiete. Dahinter steckt dann lediglich eine header() + readfile() Funktion.