Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Ukrywanie plików - http autoryzacja - problem spory - DALEJ NIE DZIAŁA :-(
Forum PHP.pl > Forum > PHP
Piotr Klag
Witam!

Zmagam sie z pewnym problemem.

Chciałbym miec możliwosc ukrcya częsci plików ze zdjęciami przed userami i tak:

Przykład:
katalog:
_galeria/produkt/jakis_id/ -> fotki widoczne dla wszystkich - klasycznie:
<img src="....>

_galeria/produkt/jakis_id/log -> tylko dla zalogowanych

_galeria/produkt/jakis_id/log/adm -> tylko dla administratorów

Mysłałem o tym że by zabezpieczać kolejen foldery Http autopryzacją i tak próbowalem

_galeria/produkt/jakis_id/log
_galeria/produkt/jakis_id/log/adm
.http z hasłami

W katalgach wrucałem grafiki jpg.

I pojawia sie problem z php i wywpoływaniem grafik -ne wiem jak przeskoczyc okno httpo autoryzacji któego nie może byc- dla użytkownika mus to byc transparentne.

Podstawiałęm w plikach $PHP_AUTH_USER podstawiac dane i wywoływac grafdiki i nic z tego.

Mysąłme również zo zmianach uprawnień a chomdach ale nic z ego nie wyszlo. Każda próba określenie odczytu tylko dla grupy lub tylko włąscicela nie umozliwiła pokzania pliku przez www spod poziomu php.

Kol;ejny poimysł nietrefaiony to zmiana plików .jpg na jakeis inne rozszerzenie i ciągniecie go do skryptu na żywaca - pomysł nie wypalił.

MOże macie jakies pomysły jak to ugryżć:
metoda musi byc być prosta - grafiki nie można zobaczyć po wpisaniu na żywca
http://adres/_galeria/produkt/jakis_id/log/jakis.jpg
a mozna go pokazać pporzez www w nowym oknie dla wybranego usera.

p.s. ważne:
pliki muszą leżac jaki pliki na sererze www - nie moga byc wsadzone w bloby baz danych.

z góry dziękuje za pomoc
--
pozdrawiam
Piotr Klag
mailto: piotr@klag.pl
bhacas
mod_rewrite powinien Ci ułatwić sprawę.
Piotr Klag
Cytat(bhacas @ 15.11.2007, 15:51:38 ) *
mod_rewrite powinien Ci ułatwić sprawę.


NIESTETY TA METODA CHYBA NIE DZIAŁA :-(

http://pl2.php.net/manual/pl/features.http-auth.php
jutro przetestuje czy suie uda:

Cytat(Piotr Klag @ 15.11.2007, 16:02:48 ) *

i chyba sam przecenima wartość tego roziwazania - dzialafajnie dla osadzonych plików php ale przykład wydaje sie byc absuradlny - wiadomo że funkcje leża jko includy w php plikach i sam fakt wpisania : <a href="http://jakis.plik.php" target="_blank">http://jakis.plik.php</a> niewiele komus da wiec jest to zbędne.

Byłem przekoany że jest to w stanie zadziałc i objąc regulła cały katalog gdzie leży test.php jakkolwiek tak sie nie dzieje - może macie jakis inny pomysł?

Ewentualnie może ktos z Was wie jak do formularza tgo z wyskaokujacym hasłem na żywca wpisac login i hasło tak żeby suer musiał tylko wcisnąc OK to jeszcze by przexzło chociaż roziawanie takie bły totalną amatorszyzną - bede wdzięczny za wszelkie info.

p.s. to do czego sie odwołuje:
Cytat
Getting PHP Authentication to work with CGI-bin.

You must have mod_rewrite installed for this to work. In the directory (of the file) you want to protect, for the .htaccess file:

# PHP (CGI mode) HTTP Authorization with ModRewrite:
# most right example with header check for non empty:
RewriteEngine on
RewriteCond %{HTTP:Authorization} !^$
RewriteRule ^test.php$ test.php?login=%{HTTP:Authorization}

Change the Rewrite rule to whatever you want it to be. For simplicity, this example only applies to one file, test.php and only if the HTTP Authorization needs to take place.

In the php file:
<?
if (isset($_GET['login'
])) {
$d = base64_decode( substr($_GET['login'],6
) );
list($name, $password) = explode(':', $d
);
echo 'Name:' . $name . "<br>\n"
;
echo 'Password:' . $password . "<br>\n"
;
} else {
header('WWW-Authenticate: Basic realm="My Realm"'
);
header('HTTP/1.0 401 Unauthorized'
);
echo 'You are not authorized. Bad user, bad!'
;
exit;
}
?>

You need to get rid of the first 6 characters for some reason, then decode the Auth data from its base64 format. Then it's a simple matter of extracting the data. You can even pass the data to the $_SERVER variables $_SERVER['PHP_AUTH_USER'] and $_SERVER['PHP_AUTH_PW']. These are the variables that get the login data if you have PHP running as an Apache module. This is useful for mods or plugins

To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.