Почему закрыли onliner.by — один из самых популярных ресурсов Беларуси

onliner.by закрыт, но открылся onliner.ru

20 декабря 2014 года Оперативно-аналитическим центром было принято решение об исключении доменного имени onliner.by из реестра национальной доменной зоны. Причина закрытия    Министерством торговли Республики Беларусь были выявлены нарушения законодательства о торговле.

 

Парсинг robots.txt файлов на php

robots.txt — файл с инструкциями для поисковых машин. Обычно в нём указывают список url, которые нужно запретить к индексации (директива Disallow). Но, это далеко не все возможности robots.txt. В robots.txt можно:

  1. задать главное зеркало сайта с помощью директивы Host
  2. указать ссылки на файлы sitemap с помощью директивы Sitemap
  3. указать минимальный интервал в секундах с помощью директивы Crawl-delay, не ранее чем через который робот сделает запрос к следующей странице сайта. Обычно используют, если сайт не справляется с нагрузкой
  4. указать get-параметры, которые не стоит учитывать при индексации страниц с помощью директивы Clean-param
  5. задать urls, которые разрешены к индексации с помощью директивы Allow (протиповоложенность директиве Disallow)

Зачем "прятать" свой email адрес?

Многие люди (владельцы сайтов) размещают на страницах своего сайта свой E-mail адрес. Или же, что еще хуже, email-адрес своих пользователей.

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

Если вы разместите свой е-меил адрес (мыло, мэйл, mail, e-mail) где-нибудь на видимом месте вашего сайта, то рано или поздно вам начнет приходить куча не нужного спама на ящик от ботов, которые серфят в интернете в поисках “свобоных” мыл, чтобы накидать туда спама :). В сети много ботов, которые “лазят” по интернету (сайтам, блогам, порталам, соц. сетям) в поисках новой партии актуальных email-адресов. Если не защитить свой ящик от ботов, то со временем и c ростом популярности сайта к вам будет приходить все больше и больше “ненужных” писем.

Форматирование текста в redmine

Привожу ссылку на официальную документацию по форматированию текста в redmine. Я же попробую сделать свою более удобную и наглядную статью (памятку по оформлению текста в redmine) с примерами по форматированию строковых, блочных, табличных элементов, вставке ссылок, подсветке исходного кода и вставке картинок в redmine.

подсветка синтаксиса кода в redmine

Что такое reverse dns lookup и как получить reverse dns

Что такое Reverse DNS легко понять, если вы знаете что такое DNS. Получение Reverse DNS - противоположенность DNS.

Т.е. если традиционный (прямой) DNS заключается в получении ip-адреса по хосту, то Reverse DNS (обратный, противоположенный) - это получение хоста по ip-адресу. Также Reverse DNS называют PTR-записью (pointer, указатель).

reverse dns lookup

 

Запросы инъекции для mysql

В mysql вместо ожидаемого хэша (строка из 40 букво-цифр) нашёл следующие данные. Я так понимаю, кто то хотел выполнить mysql инъекцию. Далее будут примеры строк для mysql-инъекций, которыми хотели взломать сайт (домен не разглашаю). Хоть инъекция и не прошла, но всё же проверку строки на ожидаемый формат я добавил.

Недостатки фреймворка Kohana

Недостатки фреймворка Kohana

1. IDE-подсказки при работе c ORM. Их нет. Например, код:

$latestPosts = ORM::factory('Post')->fetchLatests($limit);

Названия методов из класса Model_Post придётся вспоминать (например, fetchLatests), т.к. IDE покажет подсказки только для класса ORM, а Model_Post - наследник ORM. Перейти в метод по ctrl+click не получится. Вы можете возразить, есть же PHPDoc @var: 

/**
 * @var $modelPost Model_Post
 */
$modelPost = ORM::factory('Post', $postId);
$latestPosts = $modelPost->fetchLatests($limit); //теперь IDE любезно покажет доступные методы

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

Travis шифрование переменных

Шифрование нужно использовать, если вы хотите скрыть приватные данные от посторонних глаз.

На девелоперской машине нужно установить travis gem. gem install travis ставится долго, создаётся впечатление, что ничего не происходит, но нужно просто немного подождать.

sudo apt-get install rubygems
sudo gem install travis
travis encrypt "__PSW__=password"

Чтобы автоматически добавить шифрованную строку в конфигурационный файл travis .travis.yml, нужно команду encrypt выполнить с ключом --add

travis encrypt "__PSW__=password" --add

 

Клонирование приватных подмодулей в travis, генерация ssh-ключа

Deploy ключи на travis используются только при клонировании основного репозитория. Чтобы склонировать зависимые приватные репозитории, можно использовать https схему c указанием пользователя и пароля вместо git@github.com, deploy ключи, пользовательские ключи или Api token. 

Если это не настроено, то во время билда в travis при клонировании приватных подмодулей будет возникать ошибка:

ERROR: Repository not found.
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.

Ниже рассмотрим 2 из возможных вариантов что нужно сделать, чтобы в travis работало клонирование приватных подмодулей.

  1. Использовать https схему c указанием пользователя и пароля вместо git@github.com.
  2. Сгенерировать пользовательские ключи

1. travis клонирование через https схему

Для этого, во-первых, отключим инициализацию подмодулей:

git:
  - submodules: false

 

git алиасы

В svn я привык к кратким командам svn st, svn co. В git же по умолчанию нужно писать имя команды полностью. Но, всегда можно добавить алиасы на команды git и писать как вам хочется, примеры git alias:

git config --global alias.st status
git config --global alias.co checkout
git config --global alias.ci commit
git config --global alias.di diff

 

НОВЫЕ ПОЛЬЗОВАТЕЛИ