Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] .htaccess
Forum PHP.pl > Forum > Przedszkole
The Night Shadow
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ć
drPayton
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. ?>
sf
albo przez mod rewrite.. wg mnie jednak najlepiej umieścić te pliki w osobnym katalogu bo inaczej jest bajzel, a tego powinno się unikać
qqrq
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.
Koniczynka
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?
lordziqqq
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]
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.