Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: blokada podstrony
Forum PHP.pl > Forum > PHP
wiktor1984
Witam miałbym pytanie czy darady było by zrobić w php blokade podstrony.
Chodzi o to aby na podstronę można było by wejść tylko z jednego linka, natomiast po wpisaniu adresu w przeglądarce nie.
Podstrona miała by się otwierać dla niezalogowanych użytkowników gości
kartin
Praktycznie nie jest to możliwe, bo nagłówek Referer można sobie dowolnie ustawić.
Jednak można zrobić coś co dla 99% osób będzie zabezpieczeniem, którego nie będą w stanie przełamać. Sprawdzaj czy w $_SERVER['HTTP_REFERER'] jest adres strony z której można wchodzić. Jeśli tak to wyświetlaj stronę, jeśli nie to nie.
wiktor1984
Kod
<?
if(isset($_SERVER['HTTP_REFERER'])&&$_SERVER['HTTP_REFERER']=='costam.pl') {
die('Dostęp zablokowany!');
}
?>

odnośnie SERVER['HTTP_REFERER'] odnalazłem taki oto kodzik ale coś nie chce działać
kartin
Ten kod blokuje, odwiedziny pochodzące z konkretnego adresu. Poza tym adres powinien być kompletny z http:// lub https:// np. http://example.com/abc.html
wiktor1984
Trochę mi to zajeło ale w końcu doszedłem do tego:
Kod
<?php
if (strpos($_SERVER["HTTP_REFERER"], "http://XXX.pl") === false){
   die("Dostęp zablokowany");
}
?>
kartin
To przepuści nie tylko wejście z adresu http://XXX.pl, ale także z każdego innego zawierającego ten ciąg znaków np.: http://example.com/abc?cde=http://XXX.pl
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.