Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] .htaccess, Blokada dostępu do plików z poziomu adresu...
The Night Shadow
post
Post #1





Grupa: Zarejestrowani
Postów: 495
Pomógł: 2
Dołączył: 5.02.2006
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


W jaki sposób zablokować dostęp do określonych plików w danym folderze w taki sposób, by mogły z nich korzystać skrypty znajdujące się na serwerze, ale by nie można tych plików otworzyć poprzez wpisanie odpowiedniego adresu w przeglądarce.

Np. (główny folder):
index.php
cos.php

http://www.adres.pl/cos.php (błąd blokady)
w pliku index.php include('cos.php') - ma działać
Go to the top of the page
+Quote Post
drPayton
post
Post #2





Grupa: Zarejestrowani
Postów: 890
Pomógł: 65
Dołączył: 13.11.2005
Skąd: Olsztyn

Ostrzeżenie: (0%)
-----


Np, w pliku który includuje inny ustawić zmienną/stałą, np:
  1. <?php
  2. $fileAccess=true;
  3. ?>

A w includowanym sprawdzać, czy ona istnieje:
  1. <?php
  2. if(!$fileAccess) die('Brak bezpośredniego dostępu');
  3. ?>

Albo, żeby nie bujać się z tymi zmiennymi, w plikach, które nie mogą być bezpośrednio wykonywane na początku:
  1. <?php
  2. if (0==sizeof(debug_backtrace())) die('Brak bezpośredniego dostępu');
  3. ?>


Ten post edytował drPayton 25.10.2007, 11:01:51
Go to the top of the page
+Quote Post
sf
post
Post #3





Grupa: Zarejestrowani
Postów: 1 597
Pomógł: 30
Dołączył: 19.02.2003
Skąd: Tychy

Ostrzeżenie: (0%)
-----


albo przez mod rewrite.. wg mnie jednak najlepiej umieścić te pliki w osobnym katalogu bo inaczej jest bajzel, a tego powinno się unikać
Go to the top of the page
+Quote Post
qqrq
post
Post #4





Grupa: Zarejestrowani
Postów: 418
Pomógł: 8
Dołączył: 16.11.2006

Ostrzeżenie: (0%)
-----


Jak napisał sf, do osobnego katalogu, a tam w .htaccess dać
Kod
Order deny, allow
Deny from all


To powinno zablokować możliwość wejścia do katalogu, ale skrypty dopuści.
Go to the top of the page
+Quote Post
Koniczynka
post
Post #5





Grupa: Zarejestrowani
Postów: 61
Pomógł: 0
Dołączył: 24.05.2006

Ostrzeżenie: (0%)
-----


Witaj,

Też myślałem, że .htaccess z deny from all nie pozwoli na dostęp do katalogu z poziomu wyszukiwarki, a umożliwi go skryptom. Jednak myliłem się.

  1. <img src="<?php echo $cog;?>" alt="#" title="#" />


  1. <?php
  2. Order Allow,Deny 
  3. Deny from All
  4. ?>


Zdjęcie jest pobierane z katalogu podrzędnego, w którym znajduje się .htaccess z formułą deny from all. Jednak nie wyświetla się, kiedy plik jest na serwerze. W wypadku, gdy go usunę, nie ma problemu...

Próbowałem też z zabezpieczeniem hasłem i przekierowaniem w .htaccess, ale wygląda to tak, jakby moja zmienna pobierała nie obrazek, a plik z zabezpieczeniem (przy haśle wyskakiwało mi okienko do wpisania loginu i hasła na stronie z obrazkiem...). Dałem jeszcze wyżej echo $cog, żeby sprawdzić, i wszystko jest jak najbardziej wporządku z linkiem.

Zna ktoś z Was przyczynę takich wariacji?

Ten post edytował Koniczynka 8.11.2007, 08:53:41
Go to the top of the page
+Quote Post
lordziqqq
post
Post #6





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 22.06.2006

Ostrzeżenie: (0%)
-----


tak znamy

  1. deny from all


zablokuje dostep do katalogu z zewnatrz i w przypadku skryptow php to wystarczy bo skrypt jest includowany ( dolaczany ) do pliku ktory wywolujesz

w przypadku IMG SRC... plik nie jest includowany tylko nadal jest on pobierany przez usera

jednym slowem jesli chcesz zablokowac obrazki od hotlinkowania to uzyj w pliku .htaccess czegos w stylu :

  1. RewriteEngine on
  2. RewriteCond %{HTTP_REFERER} !^$
  3. RewriteCond %{HTTP_REFERER} !^http://(www\\.)?twoja-strona.pl/.*$ [NC]
  4. RewriteRule \\.(gif|jpg)$ http://www.twoja-strona.pl/hotlink.gif [R,L]
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 02:13