Рубрика «Веб-разработка» - 105

Типичные ошибки при защите сайтов от CSRF атак

В настоящее время в сфере обеспечения безопасности веб-сайтов и приложений возникла очень интересная ситуация: с одной стороны, некоторые разработчики уделяют особое внимание безопасности, с другой, они напрочь забывают о некоторых видах атак и не считают ошибки, позволяющие выполнить данные атаки, уязвимостями. Например, к такой категории можно отнести CSRF (Сross Site Request Forgery). Эта атака позволяет производить различные действия на уязвимом сайте от имени авторизованного пользователя. Если вы не слышали о таком, то я рекомендую прочитать соответствующую статью в Википедии, чтобы иметь общее представление об этом виде атак. Основная часть статьи предназначена тем, кто обеспокоен правильной защитой своих сайтов от CSRF.
Читать полностью »

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

Best of Awesomeness & Usefulness for Web Developers

Две недели назад я опубликовал «Лучшие интересности и полезности за год». Моим дайджестам тогда исполнился ровно один год и я хотел разместить пост точно в срок. Но не правильно рассчитал время и не упомянул много всего, что должно было быть в той подборке. И даже в опросах забыл указать в редакторах Vim, во фреймворках ExtJS и тд. За что мне очень стыдно. В целом подборка выросла как минимум в два раза и я создал репозиторий на GitHub. Моей целью не было сделать очередной awesome-* список, в которые попадает практически все подряд — лучшие и ненужные альтернативы. Я попытался выделить все самое лучшее.

DUO

Несколько интересностей и полезностей для веб разработчика #26
Авторы проекта называют его сборщиком нового поколения для фронтенд разработчиков. DUO собрал в себе все самое лучшее от Component, Browserify и Go.

Читать полностью »

Ниже перевод поста из блога команды разработчиков.

Yahoo User Interface Library (YUI) используется в Yahoo с 2005 года. Библиотека была представлена публично 13 февраля 2006 года. Хотя YUI очень сильно преобразилась с того времени, она всегда преследовала одну большую цель — предоставить разработчикам обширный набор инструментов для легкого создания богатых web-приложений.

YUI — это важная часть истории Yahoo. Были написаны миллионы строк кода, использующие YUI, и этот код до сих пор используется сегодня. Как бы то ни было, для нас стало ясно — индустрия движется в ином направлении.
Читать полностью »

Привет!
Мы продолжаем знакомить вас с наиболее успешными и популярными e-commerce платформами. После нашей предыдущей статьи мы получили довольно много вопросов по-поводу того, что из себя представляет Demandware, как платформа для электронной коммерции. Ну что же, давайте вместе и попробуем разобраться.

Разрабатывать программное обеспечение для электронной коммерции на Demandware начали в 2004 году, благодаря Стефану Шамбаху и Уэйну Уиткомбу, которые и основали компанию. На данный момент платформа обслуживает около 200 компаний по всему миру. Вы, конечно, можете сказать, что эта цифра вас не поражает, но стоит заметить, что в числе этих компаний в основном мировые лидеры производства спортивной одежды: Adidas, New Balance, Reebok; зубры производства модельной одежды: Versace, Barneys, Tommy Hilfiger, Hugo Boss; гигант косметической индустрии L’Oreal со всеми своими продуктовыми линейками, включая Lancome, Vichy и многие другие.Читать полностью »

При разработке большинства сервисов возникает потребность во внутреннем биллинге для аккаунтов сервиса. Так и в нашем сервисе возникла такая задача. Готовые пакеты для её решения мы так и не смогли найти, в итоге пришлось разрабатывать систему биллинга с нуля.
В статье хочу рассказать о нашем опыте и подводных камнях, с которыми пришлось столкнуться во время разработки.

Задачи

Задачи, которые нам предстояло решить были типичны для любой системы денежного учета: прием платежей, лог транзакций, оплата и повторяющиеся платежи (подписка).Читать полностью »

PostgreSQL 9.4 Что нового?

Доброго времени суток! Не за горами релиз PostgreSQL 9.4 и нелишним будет пройтись по некоторым новшествам, привнесённым в этой версии. В статье будут рассмотрены (по большей части, касаемые клиентской модели):

Читать полностью »

Образы Docker могуть быть очень большими. Многие превышают 1 Гб в размере. Как они становятся такими? Должны ли они быть такими? Можем ли мы сделать их меньше, не жертвуя функциональностью?

В CenturyLink Lab мы много работали над сборкой различных docker-образов в последнее время. Когда мы начали экспериментировать с их созданием, мы обнаружили, что наши сборки очень быстро раздуваются в объеме (обычным делом было собрать образ, который весит 1 Гб или больше). Размер, конечно, не столь важен, если мы говорим про образы по два гига, лежащие на локальной машине. Но это становится проблемой, когда вы начинаете постоянно скачивать/отправлять эти образы через интернет.

Я решил, что стоит копнуть поглубже и разобраться с тем, как работает процесс создания docker-образов, чтобы понять, что можно сделать для уменьшения размера наших сборок. Читать полностью »

Как принимать платежи по кредитным картам — опыт Badoo Каждый год в мире появляются всё новые и новые способы оплаты. Но универсального, удобного для всех пользователей способа до сих пор нет. В 2008 году, когда мы только создавали систему биллинга для Badoo, нам казалось, что будущее за оплатой через SMS. Но, столкнувшись с реалиями разных стран, мы поняли, что это не так.

Предпочтения пользователей меняются в зависимости от страны и устройства, с которого они заходят на сайт. Очень близки к идеалу оказались банковские карты, популярность которых растет из года в год, в том числе и в России. Это не только один из самых распространенных способов оплаты, но и самый прибыльный из всех доступных на сайте Badoo, а их более 20.

Сегодня мы подробней расскажем о том, что осталось за рамками предыдущей статьи о биллинге: об обработке платежей посредством банковских карт; что надо знать и к чему готовиться, если вы только собираетесь их подключать; как увеличить их эффективность, если они у вас уже есть. В целом статья рассчитана на неподготовленных читателей, но и специалисты, возможно, найдут для себя кое-что интересное.
Читать полностью »

Мы в этом году несколько раз высказывали свое мнение о том, что рынок традиционного хостинга уже вряд ли сможет жить, как раньше (например, здесь и на Хабре). Было бы странно, если бы мы проигнорировали эти тенденции при разработке собственных продуктов. Поэтому новую версию решения Parallels Plesk 12.0 (ПО для управления работой всего, что касается веба – доменами, сайтами, почтовыми ящиками, DNS и т.д.) делали с учетом новой реальности, где время исключительно ценовых войн среди хостеров уже прошло. Сегодня на рынке начинают и выигрывают решения добавленной стоимости, направленные на отдельные сегменты аудитории, а не стандартные пакеты VPS или shared hosting, как раньше. Так, по данным Netctaft, те, кто создает предложения в области веб-хостинга под разные целевые аудитории, увеличили свою долю на рынке с 5 до 51% за последние 3 года.
Исходя из этой тенденции, мы разделили продукт на 4 разные «редакции» – для веб-админов, веб-разработчиков, веб-студий и хостеров, у каждой из которых теперь свой набор инструментов и фич. Каких именно – под катом. Мы бы хотели узнать, каких инструментов для ваших сценариев лично вам не хватает.
Читать полностью »

Это десятая статья в серии, где я описываю свой опыт написания веб-приложения на Python с использованием микрофреймворка Flask.

Цель данного руководства — разработать довольно функциональное приложение-микроблог, которое я за полным отсутствием оригинальности решил назвать microblog.

Оглавление

Часть 1: Привет, Мир!
Часть 2: Шаблоны
Часть 3: Формы
Часть 4: База данных
Часть 5: Вход пользователей
Часть 6: Страница профиля и аватары
Часть 7: Unit-тестирование
Часть 8: Подписчики, контакты и друзья
Часть 9: Пагинация
Часть 10: Полнотекстовый поиск(данная статья)
Часть 11: Поддержка e-mail
Часть 12: Реконструкция
Часть 13: Дата и время
Часть 14: I18n and L10n
Часть 15: Ajax
Часть 16: Отладка, тестирование и профилирование
Часть 17: Развертывание на Linux (даже на Raspberry Pi!)
Часть 18: Развертывание на Heroku Cloud

Краткое повторение

В предыдущей статье мы улучшили наши запросы так, чтобы они возвращали посты на страницу.

Сегодня мы продолжим работать с нашей базой данных, но с другой целью. Все приложения, которые хранят контент, должны предоставлять возможность поиска.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js