Спасибо всем, кто еще МОЖЕТ!
С нами с 25.07.04
Сообщения: 3875
Рейтинг: 1570
|
Добавлено: 23/04/14 в 00:18 |
Думал найду, не тут-то было! Все сайты копируют друг у друга одни и те же шаблоны. Тут тоже http://www.htaccesstools.com/ нет. ХЗ, может и нет такого, но вроде должно.
ТЗ: разрешить вход в папку только с определенного сайта, т.е. по http_referer
Как запретить знаю по http_referer знаю, как разрешить только определенным IP тоже знаю, а мое ТЗ как ни колупаюсь, не выходит.
На крайняк можно по РНР, но так чтобы 1 файл либо чтоб 1 одинаковый код в каждую страницу сунуть - их там много.
|
|
|
|
С нами с 27.03.14
Сообщения: 201
Рейтинг: 169
|
Добавлено: 23/04/14 в 11:42 |
Так http_referer можно довольно легко подменить... сомнительная эффективность такого ограничения... А на PHP проверку, конечно, проще сделать.
|
|
Perestroika Affiliates - легендарная гемблинг-партнерка №1.
|
3
|
|
|
Спасибо всем, кто еще МОЖЕТ!
С нами с 25.07.04
Сообщения: 3875
Рейтинг: 1570
|
Добавлено: 23/04/14 в 12:09 |
Про подмену не знал, покажи как, интересно. Пока повозился вчера, сделал на РНР.
|
|
|
|
С нами с 01.04.07
Сообщения: 4378
Рейтинг: 2970
|
Добавлено: 23/04/14 в 12:09 |
photomuza писал: | Думал найду, не тут-то было! Все сайты копируют друг у друга одни и те же шаблоны |
Ищи запрет хотлинка, такого добра навалом.
|
|
|
|
С нами с 01.04.07
Сообщения: 4378
Рейтинг: 2970
|
Добавлено: 23/04/14 в 12:14 |
photomuza писал: | Про подмену не знал, покажи как, интересно |
Браузерными инструментами меняешь страничку, ставишь ссылку на нужную папку и заходишь с рефером. Даже пхп с хтаксесом знать не надо.
|
|
|
|
С нами с 17.03.12
Сообщения: 335
Рейтинг: 790
|
Добавлено: 24/04/14 в 02:17 |
>ТЗ: разрешить вход в папку только с определенного сайта, т.е. по http_referer
В ту папку ложишь .htaccess
SetEnvIf Referer ^http:// badref=1
SetEnvIf Referer ^http://(www\.)?domain.com goodref=1
SetEnvIf Referer ^http://(www\.)?other-domain.net goodref=1
Order Deny,Allow
Deny from env=badref
Allow from env=goodref
Или на nginx
location = /protected_dir {
valid_referers none blocked server_names ~ \.example\.com;
if ($invalid_referer) {
return 444;
}
}
подделать реферер можно curl'ом к примеру
<?php
curl_setopt($curl, CURLOPT_REFERER, "http://google.com");
?>
|
|
|
|
С нами с 27.03.14
Сообщения: 201
Рейтинг: 169
|
Добавлено: 24/04/14 в 11:03 |
|
|
Perestroika Affiliates - легендарная гемблинг-партнерка №1.
|
0
|
|
|
Спасибо всем, кто еще МОЖЕТ!
С нами с 25.07.04
Сообщения: 3875
Рейтинг: 1570
|
Добавлено: 24/04/14 в 15:22 |
Sargas: Не годится, без реферера пускает. Сунул один PHP код в начало всех страниц и не парюсь.
|
|
|
|
С нами с 27.03.04
Сообщения: 2494
Рейтинг: 585
|
Добавлено: 24/04/14 в 20:34 |
AuthType Basic
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://www.good_referrer.com [NC] #пропускать
RewriteCond %{HTTP_REFERER} !^http://good_referrer.com [NC] #пропускать
RewriteRule /* http://hahui.com [R,L] #всех плохих редиректить по этому адресу
P.S. против подмены реферера htaccess-ом не защититься, но, имхо, если всё так серьёзно, что будут с подменой реферера лазить - надо закрывать паролем тогда
|
|
|
|