Как стать автором
Обновить
30
0
Андрей @napster

Пользователь

Отправить сообщение

Настройка php-cgi в связке с nginx на основе sockets

Время на прочтение3 мин
Количество просмотров3.4K
Всем привет.

Под капотом приведен пример того, как можно настроить php-cgi на основе unix:sockets.
Пример рассчитан на дистрибутивы Ubuntu и Debian.
Читать дальше →
Всего голосов 17: ↑10 и ↓7+3
Комментарии14

mod_rewrite — просто о сложном

Время на прочтение4 мин
Количество просмотров65K

Что это такое?


mod_rewrite — это модуль для веб-сервера Apache, предназначенный для преобразования URL-ов. Модуль использует в своей работе правила, которые могут быть описаны как в конфигурации сервера (httpd.conf), так и в файлах .htaccess непосредственно в файловой структуре Вашего сайта. Правила описываются в виде регулярных выражений PCRE

Hello world


Простейший пример. Допустим, Вы захотели, чтобы никто не знал, что Ваш сайт написан на PHP и решили замаскировать расширения файлов. Можно, конечно, внести соответствующую директиву в конфигурацию Apache и тогда все файлы с расширением ".msl" («My Super Language») будут обрабатываться интерпретатором PHP. Но можно поступить проще:
создаем в корне нашего сайта файл .htaccess со следующим содержимым
RewriteEngine On
RewriteBase /
RewriteRule ^(.*)\.msl$ $1.php [QSA,L]


Первая директива включает механизм mod_rewrite в текущей папке и во всех ее подпапках. Вторая указывает модулю mod_rewrite, что текущая папка в файловой системе соответствует корню сайта. Третья — непосредственно правило преобразования URL.

Прочесть его можно так:
Если сразу после начала строки ("^") идет произвольное количество любых символов ( "(.*)" ), причем мы хотим запомнить, что именно это за символы, окружая их скобками, затем идет точка ("\.") (экранируем точку, потому что одиночная точка — это просто любой символ), затем символы «msl» и на этом строка заканчивается ("$"), то заменим исходный URL на следующий: возьмем первую запомненную подстроку в скобках из правила, прибавим к ней ".php", добавим все дополнительные параметры адреса, которые могли быть "[QSA]" и на этом закончим, не будем применять дальнейшие преобразования, если они есть "[L]"

Все, теперь Вы можете смело менять все ссылки, заканчивающиеся на ".php" на ".msl" и писать в своем блоге, что изобрели новый скриптовый язык. Apache, встретив ссылку на «index.msl» с помощью mod_rewrite на лету преобразует ее в «index.php» и вызовет нужный скрипт.

А что еще умеет mod_rewrite?


Читать дальше →
Всего голосов 45: ↑33 и ↓12+21
Комментарии12

Подключение Paypal

Время на прочтение7 мин
Количество просмотров6.2K
Вобщем поставили передо мной на работе задачу организовать прием платежей в наш проект через Paypal. От меня требовалось дать все необходимые данные для настройки аккаунта (сам аккаунт настраивался другим человеком), ну и, собственно, написать скрипт, который и будет принимать данные от paypal-а и начислять деньги юзерам.

Ничего толкового по этой теме на хабре я не нашел. Пришлось разбираться со всем самому. Ниже – результаты этих разбирательств:)
Читать дальше →
Всего голосов 49: ↑41 и ↓8+33
Комментарии40

Как достичь профессионального вида с помощью цвета

Время на прочтение9 мин
Количество просмотров11K
image

Что заставляет дизайн выглядеть скоординированным, спланированным и профессиональным? Ответ: 'цвет'.

Далеко не каждый проект нуждается в использовании мягкого корпоративного синего цвета для того, чтобы выглядеть профессионально. Планирование цвета означает создание структуры, которая бы описывала, какие использовать цвета и как их использовать. Цвет — самый неподдающийся элемент дизайна. «Хороший» цвет жестко связан с такими неуловимыми вещами как личный вкус и интуиция, и, в то же время, с технической позиции с калибровкой монитора и контрастом.

Но цвет просто необходим для контента. Если Вы уделите вебсайту достаточно времени для его совершенства, то читатели вероятно уделят достаточно времени его просмотру. Хороший выбор цвета сделает это возможным.

В этой статье мы будем делать обзор некоторых методик, чтобы достигнуть красивого сочетания цвета для Ваших проектов в сети.
Читать дальше →
Всего голосов 194: ↑167 и ↓27+140
Комментарии38

Отслеживание событий с помощью _trackEvent в Google Analytics

Время на прочтение2 мин
Количество просмотров3.4K
Для отслеживания событий на сайте в Google Analytics служит метод метод _trackEvent.

Сигнатура метода: _trackEvent(category, action, opt_label, opt_value)

category (обязательно) — имя категории для группы объектов, которые вы хотите отслеживать (например «Видео»).
action (обязательно) — действие, которое определяет событие (например «Воспроизведение»).
opt_label (по желанию) — описание события (например название видеоролика).
opt_value (по желанию) — целое число, которое представляет числовые данные о событии (например рейтинг в случае голосования за видеоролик).

Примеры использования:

Читать дальше →
Всего голосов 8: ↑6 и ↓2+4
Комментарии17

Загрузка фотографий на сайт c помощью электронной почты

Время на прочтение7 мин
Количество просмотров607
Это мой первый пост на Хабре, по этому не судите строго.

Задача.


Реализовать возможность загрузки фотографий в профайл или в фотоленту события посредством электронной почты, поместить их в заданную папку и сделать соответственную запись в БД.

Алгоритм


Пользователь отправляет письмо с фотографиями на адрес типа userXXX_eventYYY@mysite.com, где eventYYY — ID события; userXXX — ID пользователя. Такого e-mail адреса НЕ СУЩЕСТВУЕТ. По этому все письма отправленные на несуществующие адреса перенаправляем на image_upload@mysite.com. Потом, при считывании почты с этого адреса, парсим заголовки и узнаем на какой адрес изначально было отправлено письмо. Распарсив полученный адрес, узнаем КУДА складывать файлы и кто их залил.
Читать дальше →
Всего голосов 21: ↑18 и ↓3+15
Комментарии26

PHP & AMQP (Продолжение) Инсталляция php-rabbit

Время на прочтение2 мин
Количество просмотров1.8K
В продолжении статьи «AMQP теперь и в РНР»
кому интересно, какие камни ожидают при инсталляции php-rabbit
Читать дальше →
Всего голосов 2: ↑2 и ↓0+2
Комментарии2

Обработка горячих клавиш при помощи javascript

Время на прочтение2 мин
Количество просмотров3K
Захотелось мне в своем проекте использовать горячие клавиши для управления содержимым. Нажал esc — закрылось диалоговое окно, ctrl+left — открылся следующий раздел… Порылся в гуглях-яндексах и, не найдя идеала, решил написать свое решение.
Теперь оно у меня есть — маленькое, легкое, независимое от от других библиотек.
Мне достаточно подключить javascript-файл и написать
$e('ctrl esc').bind("alert('Ыыы');");

Готовый javascript можно взять здесь.
UPD Улучшен код. Спасибо, Yeah, aubt.
Подробнее о возможностях
Всего голосов 18: ↑16 и ↓2+14
Комментарии12

Продвинутая фильтрация в Google Analytics

Время на прочтение1 мин
Количество просмотров1K
В Google Analytics добавлен продвинутый функционал фильтрации по критериям (events). Фильтровать аудиторию можно в пару нажатий мышки, и для отфильтрованной группы доступны все стандартные средства Google Analytics. Что интересно, выдумывать и создавать можно абсолютно любые события (например, фильтр по тем, кто смотрел на сайте видео, или по тем, кто щёлкал по рекламе).

Технически это работает так. Как только вы создаёте новые уникальные критерии для фильтрации (event), генерируется новый код для счётчика и система начинает регистрировать эти события.

Примеры событий и соответствующих кода можно найти здесь.

Ребята из Google засняли демо-ролик, чтобы показать, как теперь работает эта система.



via Search Marketing News
Всего голосов 21: ↑20 и ↓1+19
Комментарии8

Как сделать книгу в домашних условиях

Время на прочтение1 мин
Количество просмотров28K
Многие любят читать книги и многие любят это делать с книгами в бумажной версии;)).
В данной статье я расскажу, как дома можно сделать себе книгу.
Работа займёт не более 10 минут плюс распечатка на принтере.
Читать дальше →
Всего голосов 48: ↑36 и ↓12+24
Комментарии44

Cookies внутри iframe — проблема при создании приложения ВКонтакте/Facebook

Время на прочтение5 мин
Количество просмотров57K
Управление сессиями при помощи посылки cookies на сайтах стало настолько распространено, что без этого не обходится, наверное, ни один проект, требующий авторизации пользователей. Казалось бы, механизм настолько изучен, что проблемы с ним просто немыслимы.

Так считали и мы при разработке iframe-приложения для ВКонтакте.
Но после того, как приложение было разработано (разработка велась в основном в Mozilla Firefox и Google Chrome), выяснилось, что оно неработоспособно в Internet Explorer, к которому позднее присоединились последние версии Opera и Safari.

Под катом подробное описание проблемы и вариантов её решения.
Читать дальше →
Всего голосов 59: ↑54 и ↓5+49
Комментарии45

«Страницы сообществ» на Facebook — ночной кошмар SMM-щика

Время на прочтение3 мин
Количество просмотров6K
Фейсбучные «страницы сообществ» создают большую проблему для администраторов официальных facebook-страниц, порой сокращая аудиторию в десятки раз против ее желания. Ввели их еще в апреле, но русскоязычных текстов об этой проблеме за все полгода не встречал, поэтому написал свой.
Update: в комментариях сотрудник Facebook дает ценные указания.

Читать дальше →
Всего голосов 53: ↑39 и ↓14+25
Комментарии34

Обзор российских интернет-лейблов

Время на прочтение4 мин
Количество просмотров35K
Интернет-лейбл — это сетевой аналог оффлайнового музыкального издательства. Если изначально традиционные рекорд-лейблы занимаются дистрибуцией музыкального контента, раскруткой коллективов и исполнителей в реальном мире, то интернет-лейблы ведут ту же работу в сети. В связи с тяжелым положением традиционной музыкальной индустрии, когда даже титаны музыкального бизнеса вынуждены сильно рисковать при выпуске новых релизов, в последнее время рекорд-лейблы стараются работать с коллективами, которые наверняка отработают вложенные средства. В культурном плане эта ситуация достаточно плачевна — ведь сейчас даже не совсем андерграундные коллективы не могут надеяться на издание, и в прокат идут только стопроцентно успешные коммерческие проекты.

Как известно, причиной тому интернет — и он же предлагает новые пути распространения музыки. Уже с начала нулевых в Америке и Европе появляются новые схемы — когда релизы не выпускаются на CD, а публикуются только виртуально, и группы и исполнители раскручиваются через интернет. Скопировав подход традиционных-рекорд лейблов и перенеся его в сеть, появились так называемые net-labels или, по-русски, интернет-лейблы, или сетевые лейблы, или mp3-лейблы.

Что же такое вообще рекорд-лейбл? Во-первых, это организация, которая занимается распространением не любой музыки, а какого-то определенного формата или даже узкого специфического направления. Есть продюсер, или несколько, которые занимаются отбором музыки, и хороший лейбл обязательно имеет свое лицо и звук. Некоторые релизы слушают только потому что их издал лейбл 4AD, к примеру. Во-вторых, лейбл занимается защитой авторских прав. В случае с интернет лейблами защита авторских прав ограничивается только публикацией контента под свободной лицензией, но отбор музыки может быть довольно серьезным. Лейблу выгодно, чтобы люди слушали именно его музыку, он занимается промоушеном — может устраивать концерты, распространяет информацию о релизах в сети, и так далее и тому подобное.

Впрочем, отличий интернет-лейблов от традиционных больше — как правило, это лейблы некоммерческие, как правило, релизы распространяются на свободных лицензиях и в основном по Creative Commons. Интернет-лейблы редко занимаются раскруткой группы и организацией концертов, в основном их дело — просто распространение музыки в сети. Так как вести дела интернет-лейбла проще, то часто ими занимаются несколько человек или даже один.

Отличие интернет-лейбла от таких площадок по распространению музыки, как soundkey.ru или kroogi.ru очевиднее. Такие порталы просто предлагают любому разместить у них музыку и получать за нее вознаграждение. Ни отбором, ни защитой прав, ни раскруткой они не занимаются. Проще говоря, лейбл — это издательство, а soundkey.ru и kroogi.ru — это магазины.

Еще пара слов и 7 российских интернет-лейблов, заслуживающих вашего внимания.
Всего голосов 44: ↑40 и ↓4+36
Комментарии48

Концептуальный подход к подаче информации в интернет-магазинах. Часть 1

Время на прочтение7 мин
Количество просмотров8.7K
Приветствую вас, хабра-сообщество. Итак, о чем пойдет речь в посте. Многие из вас могут ошибочно сделать вывод, что речь в посте пойдет о дизайне, юзабилити и подобном. Но! Речь в посте пойдет именно о том, как и какую информацию подавать потенциальным покупателям. О концептуальном подходе к интернет-магазинам.

Пост вышел совсем не маленький! Много текста, требует осмысления, и, возможно(как всегда у меня выходит), сложного для восприятия. Но разбивать весь пост на 2-3-4 части я не хочу. Лучше потратить время и прочитать все сразу, тогда будет понятнее. Тем более, что, все же, тема планировалась на 3 поста. Это 1-й и все 3 будут большими.
Если интересно милости просим за хабракат.
Всего голосов 89: ↑68 и ↓21+47
Комментарии81

7 советов о том, как получить больше от Google AdWords

Время на прочтение4 мин
Количество просмотров1.7K
image

Всем известно, что службы контекстной рекламы, такие как Google AdWords, основываются на принципах аукциона. Но на самом деле все не так просто. Повышение вашего показателя качества (Quality Score) означает, что вы будете тратить меньше, а получать больше посетителей на ваш сайт.

Допустим, что ваш Google AdWords бюджет составляет 50 000$ в год. Вы конкурируете с гораздо более крупными компаниями, имеющими рекламные бюджеты гораздо выше вашего. Зачастую это означает, что они могут купить гораздо больше ключевых слов из тех, которые вам нужны, чем вы.

Но это не всегда так.
Читать дальше →
Всего голосов 45: ↑35 и ↓10+25
Комментарии14

Нотификация о письмах по SMS

Время на прочтение1 мин
Количество просмотров703
Я поставил себе задачу бесплатно оповещать о важных письмах по SMS. Для этого я выбрал Google Calendar, позволяющий посылать сообщения о предстоящих событиях.
Вот что у меня вышло.
Всего голосов 4: ↑0 и ↓4-4
Комментарии47

Межсайтовая авторизация (SSO)

Время на прочтение3 мин
Количество просмотров9.9K
Есть задача — организовать межсайтовую авторизацию между проектами, размещенными на разных доменах (site1.com, site2.com). Пользователь автризовавшись на одном проекте, авторизовывается на всех (Single Sign On). Тоже самое с кнопкой выход (Single Sign Out). Доступ к хранилищу сессий и к базе есть у каждого проекта.

За два дня перелопатил множество статей и обсуждений. Вывод — стандартного решения для моего случая найти не удалось (интранет решения и сайты с четко разделенной открытой/закрытой зоной я не рассматривал).

Update: Продолжение истории Межсайтовая авторизация 2.
В голове уложилась пара наиболее жизнеспособных вариантов, которые я и хотел бы с вами обсудить.
Всего голосов 7: ↑7 и ↓0+7
Комментарии27

Использование Google static maps

Время на прочтение5 мин
Количество просмотров5.2K

Использование Google static maps


В статье рассмотрены основные возможности использования статических карт Google на основе собственного опыта автора.

Google предоставляет два варианта использования своих картографических сервисов.
  • Google maps, базирующийся на JavaScript API, предоставляющий разнообразные возможности для отображения различной географической информации.
    Имеется хорошо продуманная и структурированная библиотека классов, с документацией к которой можно ознакомится по следующим ссылкам:
    English, Русский и поиграться в песочнице
Читать дальше →
Всего голосов 17: ↑14 и ↓3+11
Комментарии13

Информация

В рейтинге
Не участвует
Откуда
Днепропетровская обл., Украина
Дата рождения
Зарегистрирован
Активность