Чтобы не создавать лишнюю тему... Хочу поставить элементарную защиту на стили и скрипты с помощью php.
Ключевое слово элементарную, все верующие что все что видно можно сохранить идут лесом т.к. защита строится исключительно от нубов.
Задача: на сайте вместо ссылок на css/js ставить ссылку вида http://mobdp.org.ua/wowbug/redirect.php?file=ws , где уже будет проверяться реферрер, и, если он содержит строку "http://wowbug.info/" ссылка перенаправится на какой-нить _http://wowbug.info/my.css , в противном случае юзера должно выкинуть куда-нить.
Суть: прямая ссылка без вспомогательных средств (орудуя только исходниками) не известна, а даже если и известна то открыть ее с blank не получится.
Нашел вот такой скрипт проверки реферрера (собственно только такой и нашел и по всему интернету лежит его копипаст):
Code
<?
$referer=getenv("HTTP_REFERER");
if (!ereg("^http://www.myserver.com")) {
echo "hacker? he-he...\n";
exit;
}
?>
и такой:
Code
if(!eregi("some\.com", $_SERVER['HTTP_REFERER'])) die("Несанкционированное обращение!");
С первым не получалось, сделал со вторым:
Code
<?
extract($_REQUEST);
if(!eregi("wowbug\.info", $_SERVER['HTTP_REFERER'])) header("location:http://lleo.aha.ru/na/");
else {
if($file=='ws') header("location:http://wowbug.info/.../.css");
if($file=='wh') header("location:http://wowbug.info/.../.js");
if($file=='wb') header("location:http://wowbug.info/.../.js");
}
exit;
?>
нах посылает, но при правильном реферрере CSS загрузилась не полностью (наверно 1/3).
Идея №2: вместо изменения ссылки была мысль на php загружать содержимое настоящего файла.
Code
<?
extract($_REQUEST);
if(!eregi("wowbug\.info", $_SERVER['HTTP_REFERER'])) header("location:http://lleo.aha.ru/na/");
else {
if($file=='ws') $data = file_get_contents('http://wowbug.info/wotlk/wowstyles.css');
if($file=='wh') $data = file_get_contents('http://wowbug.info/js/wowbug.head.js');
if($file=='wb') $data = file_get_contents('http://wowbug.info/js/wowbug.body.js');
echo "$data";
}
exit;
?>
Code
Warning: file_get_contents(http://wowbug.info/wotlk/wowstyles.css) [function.file-get-contents]: failed to open stream: HTTP request failed! HTTP/1.1 403 Forbidden in /home/mobdp/domains/mobdp.org.ua/public_html/wowbug/redirect4.php on line 3