Переехал в облако

До сего поста блок хостился исключительно на фрихостингах - такая была задумка с момента создания.

Последним бесплатным хостинг, который исправно служил целых два года был byethost. Надо сказать, что возможности, которые он предоставлял сравнимы с отечественными платными хостингами, например: до 50 баз данных на общий размер до 50мб, файловое прстранство - до 5.6гб, а трафик - 208гб/месяц. Не плохо, да? :)

Read more

1с-битрикс: Ошибка в типе содержимого

При переносе сотого сайта страндартными средствами битрикса (через restore.php) на спейсвеб возникла следующая ошибка:
The page you are trying to view cannot be shown because it uses an invalid or unsupported form of compression.

Что такое?

Одна из проблем - лишние символы в /bitrix/php_interface/ в файлах init.php, dbconn.php.

Также эта гадкая ошибка возникает из за сбоя в компрессии, проверить пытался ли битрикс отдавать сжатый контент можно посмотрев заголовки:

Content-Encoding: gzip	
Content-Length:4663

В этом случае решением будет принудительное отключение компрессии - в файле /bitrix/php_interface/init.php добавить константу

<?php
define('BX_COMPRESSION_DISABLED',true);
function getRealLink($ID = 0)
.....

Сколько же времени ушло на
решение этой проблемы :-/

tar: Скачать, разпаковывая

Админам или околоадминам давно приелись комманды

$ wget http://site.com/files/file.tar.gz
$ tar vxf file.tar.gz

Всё здорово, привычно, но...

  • Как часто нужен скачанный архив? Конечно зависит от специфики работы. Мне например не часто, т.е. добавляем удаление:

    $ rm file.tar.gz
  • А как быть в случае, когда по отдельности архив и распакованный архив умещаются на диске, но одновременно нет? Ну тупо места не хватает. Бывает, да :)

И есть решение! :)

Read more

sendmail: не доходит почта свой домен

Интересная ситуация: будь то хардкорный sendmail или exim - почта уходит в интернеты на ура - на разные домены, кроме своего. Предполагается, что вы используете чужую почту, будь то гугл или яндекс, или что нить ещё, привязанную на ваш домен.

Возникает обычно ошибка наподобие:

Feb 8 22:14:54 domain sendmail[14575]: p18JEqq8014575: to=rux@domain.com,
ctladdr=www-data (33/33), delay=00:00:02, xdelay=00:00:01,
mailer=relay, pri=30937, relay=[127.0.0.1] [127.0.0.1], dsn=5.1.1, stat=User unknown
Feb 8 22:14:55 domain sm-mta[14580]: p18JEstD014580: <rux@domain.com>... User unknown

А в чём собственно проблема? Почему не работает из каробки?

Read more

Android: ListView в сложном layout

Если есть потребность совместить ListView с какми-либо ещё View в одном Activity, то требуется соблюсти несколько правил:

  • Обязательно наследовать активити от ListActivity, а не от Activity
  • В onCreate() Activity поместить установку разметки, навроде setContentView(R.layout.chat);
  • Поместить в корень layout пустой ListView c android:id="@android:id/list"
  • Для адаптера списка вызывать setListAdapter(mUidsAdapter);

Read more

Партнёрка с игровым контентом

партнёрка развлекательного трафика

Сравнительно не давно открылась партнёрка для развлекательного трафика - gamezcash. Сервис предлагает пользователям различные простые игры, наподобие "угадай мелодию" или "угадай звезду". Оплату сервис принимает с помощью "подписок" ну или просто "премиум смс". Если у вас есть откуда сливать лишний трафик - стоит попробовать

Read more

VK app: проба пера с iframe

Очень давно хотелось попробовать написать iframe приложение для "ВКонтакте" - всё руки не доходили. А тут недавно добавили API для геолокации - теперь можно ставить в статус отметку о местоположении. Я просто не могу упустить шанса что-нибудь попробовать написать, тем более, что на момент написания таких приложений я не нашёл.

Read more

Linux: count of lines and symbols in file

Цель: подсчитать количество строк и/или символов в файле.

Для этого нужно воспользоваться утилитой wc. Для подсчёта количества строк нужно воспользоваться флажком -l (lines), для символов: -c (chars)

Read more

Java: создание Jar руками

Бывают и такие ситуации, когда требуется скомпилить небольшое количество файлов в jar, например после небольшой правки кода, в консоли, и без IDE.

Всё довольно просто, достаточно разбить по шагам.

  • Скормить javac все исходники, прямо одной командой кучу файлов
  • Необходимо создать текстовый файл manifest в корне проекта(на уровне с src), в котором указать класс, который будет загружен(такого вида строчка Main-Class: practice.Main). Если не указать этот класс, то появится ошибка, навроде Failed to load Main-Class manifest attribute from
  • Запаковать все с помощью jar
  • По необходимости запустить командой java -jar file.jar

Read more