Преобразование значений полей PHP-форм во вложенные объекты JavaScript

Как известно, чтобы передать в PHP-скрипт данные из HTML-формы в виде массива, нужно использовать ключи вида «field[key]», например:
[html] <form id=myform>
Пользователь 15:<br>
<input type=hidden name="User[15][id]" value="15"><br>
Имя:<input type=text name="User[15][name]" value="Вася"><br>
Телефон:<input type=text name="User[15][phone]" value="+79991234567"><br>
Пользователь 16:<br>
<input type=hidden name="User[16][id]" value="16"><br>
Имя:<input type=text name="User[16][name]" value="Петя"><br>
Телефон<input type=text name="User[16][phone]" value="+79824445551"><br>
</form>
[/html] Многие PHP-фреймворки при создании HTML-форм, дают имена их элементам подобным образом. Это и понятно, формировать их так — очень просто, при передаче такой формы в PHP-код она превратится в удобный массив вида:

array(
    "User" => array(
        15 => array(
            "name" => "Вася",
            "phone" => "+79991234567"
        ),
        16 => array(
            "name" => "Петя",
            "phone" => "+79824445551"
        ),        
    )
);

Но если вы передаёте его не путём обычной отправки формы, а с помощью Ajax, тут вас и подстерегает проблема.

Читать далее


SSL-сертификат Let’s Encrypt на Nginx : UPD

Проект Let’sEncrypt вошёл в стадию публичной беты 3-го декабря 2015 года. Теперь его можно попробовать.

В чём суть проекта: он позволяет выпускать и продлевать SSL сертификаты бесплатно и автоматически.

На счёт «бесплатно» — здесь всё ясно. Можно бесплатно получить сертификат уровня Domain Validation.

А вот на счёт «автоматически» — чуть посложнее. Разберём процесс получения и установки сертификата.

UPD: Увеличена степень «автоматизма» получения сертификата, убраны однообразные ручные операции.

Читать далее


Доступ к вашему домашнему ПК по ssh сквозь NAT

Если у вас дома стоит стационарный компьютер c Debian/GNU Linux или чем-то похожим, то у вас, вероятно, время от времени возникает потребность подключиться к нему по ssh находясь где-то совсем в другом месте. У меня, например, дома стоит системный блок без монитора и клавиатуры, работающий сервером резервного копирования. У вас это может быть рабочий ПК, или что угодно ещё, работающее под Linux.
Домашний ПК обычно входит в локальную сеть, как правило, организуемую с помощью некоего домашнего роутера. При этом доступ к нему из вне (из интернета) обычно невозможен.

Читать далее


Ваш Fail2Ban вас же и забанил

Для Linux есть замечательная утилита Fail2Ban, которая позволяет банить IP-адреса за подозрительную активность, защищаться таким образом, например, от брутфорса паролей от ssh-аккаунтов, или простым способом бороться с DDOS’ом.

Если вы им ещё не пользуетесь, кратко:

1) Установить можно банально введя

apt-get install fail2ban

после чего вы «из коробки» получите разные виды фильтров для ssh, nginx, mysql, apache, asterisk, exim, postfix, squid и ещё кучи всего.
2) Документация здесь: http://www.fail2ban.org/wiki/index.php/Main_Page

Достаточно установить fail2ban и каждого кто 3 раза будет ошибаться с вводом логина/пароля в ssh будет банить на 10 минут. Такими темпами подобрать пароль быстро не получится, особенно, если он у вас имеет вид «ac5R3&pE_~0)».

Конечно, вы знаете пароль, и всегда вводите его правильно, а точнее, ваш публичный ключ шифрования записан в ~/.ssh/authorized_keys, поэтому вы заходите на хост без пароля.

Но даже вас fail2ban в некоторых случаях может забанить

Читать далее


Защита от взлома Skype и возврат аккаунта после взлома

«-Да ладно, кому нужен мой аккаунт в скайпе?»
«-Да ну, сколько лет пользуюсь, ни разу не взламывали»
«-Ну взломают, и что? Денег у меня на нём нет, брать нечего»

xxx: — Привет
yyy: — привет
xxx: — У меня к тебе просьба, я сразу к делу
yyy: — давай
xxx: — Я хотел у тебя взаймы до завтра попросить
yyy: — скока?
xxx: — 20 тыщ рублей нужно
yyy: — нифигасебе

Похожий диалог может начаться между вами и каждым человеком из вашего списка контактов в Skype, после того, как мошенник завладеет доступом к вашему аккаунту. Попробуйте представить себе, как вы потом будете решать проблему переведённых неизвестно кому денег от десятка-другого человек из вашего списка контактов (уверенных, что переводили деньги они вам), после чего, примите решение, стоит ли читать данную статью 🙂

Читать далее


Анализ безопасности сайта на WordPress

После того, как один из сайтов моих знакомых, написанный на WordPress, был несколько раз взломан из-за того, что его совсем не обновляли, я решил что пора бы уже заняться изучением безопасностью сайтов на WordPress вплотную, тем более что мой собственный сайт сделан именно на нём.
После некоторых исследований я остановился на инструменте для анализа безопасности wpscan. Этот инструмент — разработка с открытым исходным кодом, позволяющий проводить проверку сайта на базе WordPress на имеющиеся иязвимости, включая известные уязвимости в темах и плагинах. Официальный сайт: http://wpscan.org/

Далее будет описано как установить wpscan на свою машину с Debian Jessie 8.0
Читать далее


Генератор текстов / множитель статей на PHP

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

В интернете есть масса сервисов, позволяющих, введя синонимы для различных слов и выражений, сгенерировать случайный вариант текста. Примеры таких сервисов: http://www.linksfarm.ru/pages/226, http://www.seogenerator.ru/tools/.

Краткая суть в том, что указывая {разные|различные} {варианты|способы написания} в [вот|таком] виде, {можно|есть возможность} {получить|создать|сгенерировать} {различные|разнообразные} {варианты|версии} написания {одного и того же |}текста.

Да, в Интернете есть сервисы, позволяющие генерировать такие случайные тексты из таких вот шаблонов, но что если нужен свой собственный?
Читать далее


Преобразование mp4 в mp3 в консоли Debian Jessie 8.0

Youtube, как известно, хранит в себе не только многочисленные видео с котами и видеоблоггерами, но и неплохие подборки музыки. Например, одно- и двух-часовые Drum’n’Bass миксы, которых великое множество.
Прослушивание музыки в youtube на компьютере или планшете устраивает до тех пор, пока не решишь послушать эту музыку в машине, для чего понадобится флешка с mp3-файлами.

Читать далее


Закругление углов изображений с помощью ImageMagick

Время от времени многие сталкиваются с тем, что нужно закруглить углы некоей картинки, а лучше не одной, а сразу множества.
Например, это бывает нужно, если у вас задача загрузить в интернет-магазин множество товаров с фотографиями, но, как ни прискорбно, товары сфотографированы на белом фоне, а фон сайта — цветной. Немного закруглив углы, можно чуть-чуть улучшить внешний вид магазина (в случае, если закругление углов с помощью CSS на сайте по каким-то причинам делать нельзя).

Как сделать у множества изображений закруглённые углы, причём сделать это «пачкой», с использованием консоли Linux и минимумом сторонних утилит?

Читать далее


Обход блокировок сайтов Linux + FireFox/Chrome + FoxyProxy + DigitalOcean + autossh

В интернете полно рецептов того, как обходить блокировки сайтов, введённые Российскими интернет-провайдерами по решению Российских властей. Например, заблокированный сайт lurkmore.to, или сайт rutracker.org, который на момент написания данной статьи еще не был заблокирован, но готовился к блокировке.
Существующие решения сводятся к двум видам:

  1. Использование стороннего прокси-сервера
  2. Использование VPN-соединения

Минусы этих способов для нас такие:

  1. Сторонние прокси-сервера могут просматривать ваш траффик, и получать к нему доступ
  2. Платные VPN-сервисы являются платными 🙂
  3. Сами VPN-соединения требуют настройки, которую не каждый готов проделывать

Мой рецепт лишен этих недостатков, правда, он ориентирован на тех, кто использует Linux на своей рабочей машине, а также, пользуется услугами DigitalOcean или любого другого сервиса, предоставляющего виртуальные машины.
Читать далее


Страницы:12345