• PHP extension с автовызовом при запуске процесса PHP

    nazarpc
    @nazarpc
    Open Source enthusiast
    Есть опция auto_prepend_file.
    Также могу посоветовать использовать единую точку входа приложения index.php, и повесить команду которая будет выполняться перед завершением работы скрипта:
    register_shutdown_function(function () {
    	//Do something here
    });
    Ответ написан
    5 комментариев
  • PHP extension с автовызовом при запуске процесса PHP

    miraage
    @miraage
    Старый прогер
    Посмотрите в сторону pinba, zabbix.
    Ответ написан
    Комментировать
  • Как организовать защиту от парсинга сайта?

    @starosta6123
    1. Сайт изначально предназначен для публикации, то есть он открыт.
    2. Если вы не хотите чтобы информация была открыта, не публикуйте.

    Из 1 пункта следует, что нет достаточных средств для защиты от парсеров.
    Вопрос только в том, на сколько вы готовы и можете усложнить жизнь для парсеров.
    А нужно ли это? Может вы - "неуловимый Джо"?
    Все что может прочитать и распознать человек (а ведь именно для людей и делается сайт?) может быть воспроизведено. В части, где парсинг может быть автоматизирован, он будет автоматизирован.
    Сейчас существуют мощные парсеры Яндекса и Гугла. Если они ваш сайт не смогут разобрать, то и в индексе его не будет, значит полезная информация не дойдет до конечного пользователя.
    А тот, кто захочет, ее скопирует, если информация очень нужна. Если даже вы представите в виде мозаики из картинок и кусков, даже если зашифруете, но информация на экране должна все равно быть читабельной, а значит простой принтскрин и распознавание в FineReader будет быстрее, чем вы напишите защиту от него...

    Бросьте это занятие!

    Не существует защиты созданной человеком, которую не возможно сломать, вопрос времени...
    Единственный путь, это шифрование с выдачей ключа клиенту. Но клиент - человек не надежен, и информация уплывет, вопрос цены!

    И еще раз бросьте это!

    Я тоже когда-то думал об этом, но ни к чему не пришел. Всякая защита усложняет систему и увеличивает количество ошибок. Пользователь быстрее уйдет с вашего сайта, только потому что из-за ошибки в скрипте полезные данные не получит.

    Последний совет: бросьте это!

    Единственное что может вам помочь, это не раскрывать полностью всю информацию о предмете, или разделить на несколько частей, но при этом не должно быть неудобства для посетителя. К примеру, скройте "количество зубцов в шестеренке", любую ключевую информацию, без которой "самолет не взлетит".

    А если хотите поиграться, то пришла в голову идея: перемешивание по определенному алгоритму текста, который потом восстанавливается, применение стилей для скрытия "фальшивых" слов или фраз. Например, задать стиль, который скрывает каждое второе предложение или слово. Но к сожалению, это ломается на ура! Но доставит радости для взломщиков :-)

    Извините, за столь большой сумбур!

    1. Динамические запросы. Ну доставят какую-то головную боль для взломщика, но это не так сложно, как кажется.

    2. Верстка. Не знаю про бан от поисковиков, но это тоже ломается. Просто убираете теги и все. Просто в парсер добавляется "умный" фильтр. Можно конечно где-то картинку заменить фоном, или часть текста картинкой, но и на это можно сделать разборщик.

    3. Блокировка по IP не прокатит, так как могут пострадать реальные люди, достаточно применять динамический IP.

    А вообще, если хотите спастись от простых парсеров, то комплекс мер может помочь. Так же могу натолкнуть на идею, того, что парсеры обычно очень активны, и по количеству запросов с одного IP, по USER_AGENT, и другим меткам, а так же по отсутствию javascript, по обработке тега <МЕТА> redirekt.info/article/redirekt-na-html-s-zaderzhko... (отложенный редирект) и другим признакам. Можно запихнуть скрытую картинку (style="display: none"), большинство парсеров ее могут дернуть (зависит от настроек).

    В общем, можно поставить задачу в другом ключе: "Расстановка ловушек для парсеров". То есть ловить на том, чего обычные люди и браузеры делать не будут. Например, заполнять "скрытое поле пароль". Удачные ловушки дадут вам возможность выявить подставных, но лучше делать несколько проверок, а то можно и реального пользователя забанить. А я бы не стал банить, а сливал бы немного или частично измененную инфу. Эта инфа может стать маркером для выявления того, кто действительно желает с вас "слить".

    Все, удачи!
    Ответ написан
    4 комментария
  • Как вы пишите комментарии в коде, как выделяете комментариями программные блоки?

    Melkij
    @Melkij
    PostgreSQL DBA
    и где-то спустя сотню срок кода, закрывается.

    То это явный кандидат на рефакторинг.
    Выделить всю сотню строк в функцию с явным кратким описанием в названии, что та делает.
    Ответ написан
    Комментировать
  • Переменная из PHP в Jquery?

    LestaD
    @LestaD
    Веб разработчик
    Слушаааай )))
    Переменную из PHP в JS передать невозможно.
    Можно только вывести переменную из PHP в виде текста, чтобы браузер затем отпарсил JS и исполнил его.
    JS интерпретируемый язык на стороне клиента.
    PHP тоже интерпретируемый но на стороне сервера!!!
    Они никак не связаны по сути
    Чтобы вывести переменную PHP, нужно чтобы этот файл обрабатывался парсером PHP
    .js и .css файлы по умолчанию не обрабатываются. только .php
    Ответ написан
    Комментировать
  • Лингвистический анализатор русского языка?

    becks
    @becks
    все это умеет АОТ. Ставится как Com-объекты. Есть примеры на C++.
    www.aot.ru
    Ответ написан
    2 комментария
  • На чем писать веб-сервис?

    Это чисто холиварный вопрос. Я бы выбрал Node.js.
    Ответ написан
    3 комментария
  • Настройка nginx + php-fp и права пользователей

    @portfelio
    Для каждого домена свой пользователь и пул РНР запущенный от этого пользователя.
    Ответ написан
    Комментировать
  • Как правильно использовать часто используемые куски кода в Yii?

    0neS
    @0neS
    Чем виджеты (или портлеты) не угодили?
    Ответ написан
    Комментировать
  • Последствия обновления сервера linux. Попытка фикса openssl?

    @impass
    php шный curl при запросе на https с правильными сертификатами (который выдал тот самый сервис на который запрос идет) ругается 35 ошибкой, т.е. CURLE_SSL_CONNECT_ERROR

    Проверьте тот же самый запрос через консольную версию curl с опцией --verbose, будет понятнее.
    Ответ написан
    Комментировать
  • Блого-социальная сеть с нуля, с чего начать и на чем начать?

    Правильное ли я направление выбрал?

    Не очень могу себе представить как ответить на этот вопрос. Вы сами-то как думаете?

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

    Если для практики - наверное да, направление отчасти верное, но смотря для какой практики... практики написания собственного велосипеда или практики написания проекта на PHP или практики создания структуры соц.сети?
    Как только ответите себе для какой практики вы хотите это все делать - ответ на ваш вопрос будет готов на 85%. ;)

    Стоит писать на PHP или все же что-то нужно другое?

    Ответ на этот вопрос вы так же сможете получить, ответив на вопросы выше. Если вам нужен PHP, то вопрос отпадает сам собой, если нужна практика создания соц.сети, то выбирайте тот инструментарий (php, ruby или .net) в зависимости от того, что вам потребуется в дальнейшем или к чему душа лежит более, ибо тут советовать бесполезно. У каждого из озвученных ЯП есть множество достоинств и недостатков, каждый из них предназначен для схожих задач, но все они отличаются как по сложности (удобству), так и по предпочтительной сфере применения.
    Это оставшиеся 15% ответа на ваш вопрос.
    Ответ написан
    2 комментария
  • Мы ищем PHP-программиста или разработчика. И реально ли его найти на такую ЗП в Москве?

    @lookid
    Опыт в разработке клиент-серверных приложений на Erlang или/и Perl как плюс
    Лучше уберите это и напишите "Желание выучить Erlang или/и Perl в короткие сроки", а то получите Erlang-Perlовцев, которые захотят 130к. Иначе у вас какой-то комбайн получается.
    Ответ написан
    1 комментарий
  • CPanel или DirectAdmin?

    svirchoff
    @svirchoff
    CEO and Founder
    Берите ISPmanager. Cамый user-friendly вариант.
    Ответ написан
    Комментировать
  • Мы ищем PHP-программиста или разработчика. И реально ли его найти на такую ЗП в Москве?

    @cmx
    Вполне реально. Не сказал, что речь про какие-то потолочные суперскилы. Единственное, для Москвы ставка конечно немного занижена. Как мне кажется, она соответствует уровню не плохого самостоятельного php-программиста, но под ваше описание мне кажется более уместно название "web-developer", т.е. гораздо более широкий специалист, чем просто человек, хорошо использущий php и около-php-шный инструментарий.
    Ответ написан
    Комментировать
  • Какой параметр php.ini влияет на такую ошибку?

    Melkij
    @Melkij
    PostgreSQL DBA
    Не настройка. Версия PHP.
    empty, являясь языковой конструкцией, а не функцией, до PHP5.5.0 могла проверять только переменные.
    ru2.php.net/empty
    Ответ написан
    Комментировать
  • Мы ищем PHP-программиста или разработчика. И реально ли его найти на такую ЗП в Москве?

    Assargin
    @Assargin
    Перед ответом смотрю наличие ✔ в ваших вопросах
    "PHP-разработчик" даже как-то не звучит, если честно, но это субъективное. А вообще, помимо PHP, указаны другие серверные языки: Erlang и Perl. Может, это "Веб-разработчик"?
    Ответ написан
    2 комментария
  • Откуда берутся пробелы перед <!DOCTYPE html>?

    где-то есть пробелы в подключаемых файлах. Ваш КО.
    Ответ написан
    4 комментария
  • CPanel или DirectAdmin?

    Тут стоит задуматься о резонности применения данных панелей, т.к. оба варианта тихий ужас. Если вы выбираете панель для предоставления хостинга своим клиентам, то советую их пожалеть.
    Ответ написан
    Комментировать
  • Стоит ли реализовывать идею?

    buttersmai
    @buttersmai
    Представьте, что тысяча человек скинула вам видео длиной по 3 часа. Кто будет заниматься монтажем?
    Суть в том, что монетизировать подобное очень сложно, чтобы хотя бы отбить затраты.
    Ответ написан
    Комментировать