Ответы пользователя по тегу PHP
  • Как обфусцировать целую директорию с php-приложением?

    @lehha
    bcompiler - pecl расширение для php, устаревшее, но стабильно работает на php 5.x Компилирует все в оп-код, то есть не восстановить в исходный код.
    Ответ написан
    Комментировать
  • Как сделать чтобы приходили письма от mail.ru?

    @lehha
    У mail.ru стоит SPF, который запрещает подставлять в качестве отправителей адреса @mail.ru и отправлять их не с их серверов (smtp или web).

    Причем правило жесткое - отклонять такие письма 100%:

    v=spf1 redirect=_spf.mail.ru
    v=DMARC1;p=reject;
    Ответ написан
    Комментировать
  • Как реализовать парковку доменов?

    @lehha
    Не нужно привязывать все CNAME к себе, достаточно повесить один сайт на IP и любые сайты с этим IP будут открывать основной сайт как алиас. Только проверить nginx/apache чтобы не привязывался по server_name

    А далее как привязывать домены к IP есть два способа:
    1. чтобы владелец сам прописывал CNAME/A на свои домены;
    2. чтобы он просто делегировал домен на ваши DNS-серверы, а они уже будут отдавать нужные записи CNAME/A.

    Любой скрипт на стороне вашего сервера по заголовку HTTP HOST определит, что это за домен и что ему показать.
    Ответ написан
    Комментировать
  • Как получить имя домена?

    @lehha
    preg_match_all('/([0-9a-z-]+\.ru)/si', $get_query, $arr);
    Ответ написан
    Комментировать
  • Как правильно считать время?

    @lehha
    Возьмите strtotime, который выдает unix timestamp. Например,
    $time = strtotime("-1 week", $old_time);
    или
    $time = strtotime("+28 days", $old_time);

    Найти начало дня нужной метки легко:
    $time_start = strtotime("00:00:00", $time);
    и конец дня
    $time_end = strtotime("23:59:59", $time);

    на выходе uninx timestapm, который можно сравнивать и крутить-вертеть.
    Ответ написан
  • Как перевести время в timestamp?

    @lehha
    Очень грязный у вас формат. Отрезайте всё что после скобок и далее:
    $timestamp = strtotime("Sat Mar 11 2017 11:56:29 GMT+0300");
    Ответ написан
  • Как защитить денежный баланс на сайте от накрутки?

    @lehha
    Рядом с балансом храните его хэш (uid+balance+salt). Соль для хэша храните в коде приложения, чтобы его было сложно достать. Таким образом без глубокого изучения кода понять какой именно ключ и как формируется хэш будет тяжело. А если код еще и компилируется, то практически идеальное решение.
    Ответ написан
  • DNS сервер с управлением из PHP

    @lehha
    Кратко - да, будет работать.

    1. Записи подгружаются сразу. Но есть и кэш - если запись уже спрашивали, то подождать пока протухнет (настраивается в конфиге).

    2. Если Slave через AXFR - то по мере запроса зоны, если я правильно понимаю. Но проще Slave делать не на AXFR, а mysql slave replica - тогда хоть сотню слейвов, у всех будет практически идентично (в зависимости от отставания от master)

    3. Производительность шикарная - был опыт на 320к доменов, трафик жесткий, LA не более 0.5 за 3 года (не учитывая DDoS). Естественно, чтобы не убить mysql - тюнить кэш pdns и query_cache. Самый шик - это таблицу с типом MEMORY, тогда в IO никогда не упрется.

    4. За 4 года опыта - я думаю PDNS самый лучший вариант. В помощь есть debug в лог-файл (пишет даже sql-запросы) и удобная веб-статистика сервера.

    Из плюшек - возможность сделать записи на зону *.ru, например, или просто * - на все несуществующие домены, ну и LUA-SCRIPT.
    Ответ написан
    Комментировать
  • Какое Comet-решение выбрать?

    @lehha
    Dklab_Realplexor
    несмотря на свой возраст не теряет актуальности. Запущен на сервере уже 3й год подряд и работает без сбоев (7к каналов, онлайн ~ 200 сессий). Естественно через nginx.
    Ответ написан
    Комментировать