jkm

Рейтинг
120
Регистрация
20.02.2014

Средствами mod_rewrite проверять наличие определенной куки.

Если её нет, отдавать страницу с 403 ошибкой, на которой javascript установит куки и обновит страницу.

Содержимое .htaccess


ErrorDocument 403 /js_cookie.html

RewriteEngine On

RewriteCond %{HTTP_COOKIE} !mytoken=blabla
RewriteRule ^secret_zone - [F]

Содержимое js_cookie.html


<html>
<head>
<script>
function set_cookie() {
var now = new Date();
now.setTime(now.getTime()+(30*86400*1000));
document.cookie = 'mytoken=blabla' + '; expires=' + now.toGMTString() + '; path=/';
}
set_cookie();
location.reload();;
</script>
</head>
<body></body>
</html>

В теме про antiddos-решения упоминался способ без iptables

/ru/forum/comment/11618405;postcount=12

Небось joomla 1.5, а php обновили до 5.4.

Ну, для VLC согласно документации https://wiki.videolan.org/Rtmp/

нужное значение swfurl установит --avio-options={rtmp_swfurl=http://velton.ua/}

Строка запуска будет такая:


vlc "rtmp://85.90.192.233/rtplive2/veltonQuality50.stream" --avio-options={rtmp_swfurl=http://velton.ua/ru/webcams/VeltonPlayer.swf} --no-audio

Их флеш плеер отказывается работать вне домена velton.ua.

Так что нужен плеер способный ставить произвольное значение в swfurl.

Насчет jwplayer, не знаю, умеет ли он такое.

Либо поднять свой сервер для ретрансляции, который будет тянуть видео с источника и самостоятельно раздавать в удобном виде.

Там фокус в том, что rtmp сервер при подключении проверяет параметр swfUrl.

Если адрес не на домене velton.ua, сразу отфутболивает.

http://stream-recorder.com/forum/velton-stream-capturing-problem-t11160.html?

Вам только подставить в команду veltonQuality50.stream

Роботы гугла не добавляют таких номеров в юзер агент https://support.google.com/webmasters/answer/1061943.

Значит, поддельных ботов легко можно отличить по этим номерам.

Не мешало бы вызывать mysql_error перед аварийным завершением скрипта.

И подключаться к базе нужно до того как вызываете mysql_real_escape_string.

Дело в том, что mysql_real_escape_string производит экранирование с учетом кодировки соединения с базой данных, и если нет открытого соединения, возвратит false.

Если атакующие боты не заполняют должным образом поле From:


RewriteEngine On

RewriteCond %{HTTP_USER_AGENT} Googlebot
RewriteCond %{HTTP:FROM} !^googlebot\(at\)googlebot\.com$
RewriteRule ^ - [F]

У вас собственный формат логов или там действительно такой юзер агент с 853628 в конце?


177.129.214.45 - - [08/Mar/2014:18:09:39 +0400] "GET / HTTP/1.1" 200 299 "-" "Googlebot/2.1 (+http://www.google.com/bot.html) 853628"

Речь шла о:


$headers .= "Content-Type: $content charset=$charset\r\n";

В config объявлено $content = "text/plain";

Т.е. нужно исправить на:


$headers .= "Content-Type: $content; charset=\"$charset\"\r\n";

Немного о почтовых заголовках http://habrahabr.ru/post/17531/

Всего: 749