Двухфакторная авторизация Google Authenticator
В этой статье речь пойдет о дополнительной защите аккаунта, которую можно добавить при авторизации для дополнительного уровня безопасности. Это, так называемая, двухфакторная аутентификация с использованием приложения Google Authenticator для Android / iPhone.
Под катом я покажу пошаговый процесс внедрения Google API проверки двух факторов на сайте написанного на PHP.
PHP: встроенное API хеширования паролей
Думаю, ни для кого ни секрет, что нельзя хранить пароли в открытом виде. В целях безопасности их необходимо хешировать. Без хеширования пароли могут быть украдены злоумышленниками с помощью найденных уязвимостей в коде приложения, и в дальнейшем могут быть использованы для компрометации аккаунтов на других сервисах.
Обработка изображений средствами PHP и GD
PHP не ограничен созданием только HTML страничек. Он так же позволяет создавать и работать с файлами изображений в различных форматах включая GIF, PNG, JPEG, WBMP, и XPM. Что более удобно, PHP позволяет выводить изображение в потоке непосредственно в браузер.
Ошибка Upstream sent too big header while reading response header from upstream (NginX PHP FPM)
Решение ошибки при использовании веб-сервера NginX, а в качестве upstream PHP — FPM сервер.
Показать время которое будет через N минут или часов
Скрипт позволяющий показать будущее время, которое наступит через определенное время
5 примеров ЧПУ Apache
Человекопонятные URL предполагают сокращение адресов страниц до максимально лаконичных и понятных. Они создают подобие естественной для человека логической структуры данных на сервере, представляя её в виде иерархичной (древовидной) структуры, аналогично файловой системе.
Создание URI на изображения
Вместо того чтобы предоставлять прямые ссылки до изображений, вы можете создавать base64-зашифрованные ссылки внутри атрибута src.
Генерирование уникального ID
Данная функция генерирует уникальный ID, основанный на текущем времени в микросекундах.
Перебор всех вариантов перестановкой символов в строке
Что бы перебрать все возможные комбинации символов в сроке, воспользуйтесь данным скриптом
Конвертация имен кириллических доменов в punycode
Рецепт: как преобразовать кириллическое имя домена в punycode
Определяем язык браузера на PHP
function get_client_language($availableLanguages, $default='en'){
if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) {
$langs=explode(',',$_SERVER['HTTP_ACCEPT_LANGUAGE']);
foreach ($langs as $value){
$choice=substr($value,0,2);
if(in_array($choice, $availableLanguages)){
return $choice;
}
}
}
return $default;
}
Загрузка и сохранение изображения с удаленного сайта
$image = file_get_contents('http://www.url.com/image.jpg');
file_put_contents('/images/image.jpg', $image); //сохраняем изображение на вашем сервере
Вывод первых n-символов текста
Скрипт на PHP показывающий первые символы текста, удобно для анонса в блогах