По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Каждый день на сайт заходят тысячи поисковых роботов/ботов, и очень немногие из них помогают. Некоторые из них вообще являются продуктами злоумышленных целей ботами или спамом. Откуда можно узнать, сколько разных ботов посещают ваши веб-сайты? На самом деле, однозначного ответа нет. Для этого необходимо просмотреть файл access.log веб-сервера и найти столбец User-Agent. Допустим, вы хотите перечислить все боты, кроме Googlebot, тогда вы можете выполнить следующую команду на вашем веб-сервере, где существует файл access.log. grep bot access.log |grep -v Googlebot Вас тоже удивил результат? Вот, что выдал тот же запрос на моем сервере: root@gf-prod:nginx# grep bot access.log |grep -v Googlebot | wc -l 616834 root@gf-prod:nginx# Прежде чем блокировать что-либо, необходимо просмотреть их и убедиться, что вы не блокируете то, что используется вашим приложением. Вообще, есть много способов блокировки ботов, но я всегда предпочитаю блокировать их на границе. Причина проста - бесполезные запросы вообще не должны попадать и обрабатываться веб-сервером. А теперь, давайте узнаем, как блокировать ботов, которые вам не нужны, с помощью брандмауэра Cloudflare. Заходим на панель управления Cloudflare; Переходим на вкладку Firewall, затем - правила firewall и нажимаем на кнопку создать правило firewall. Вводим название правила; В качестве фильтра выбираем User Agent, оператор - contains, а в качестве значения - название бота, которое нужно заблокировать; Чтобы добавить несколько критериев в одно правило используйте оператор OR. Примечание: боты, указаны в целях демонстрации, они не обязательно вредоносные. Затем в качестве действия выбираем Block и нажимаем Deploy; Если умеете работать с выражениями, то тоже самое можете сделать кликнув на ссылку Edit expression. Сразу после применения, можно будет увидеть созданное правило. Чтобы данное правило применялось к трафику, переключатель состояния должен быть ON. Легко, не так ли? Что еще можно сделать, экспериментируя с правилами межсетевого экрана? Для повышения безопасности можно применять указанные ниже критерии блокировки: Блокировать если запрос идет с конкретного ASN или IP адреса; По соответствию ключевым словам cookie, referrer, X-Forwarder-for; Блокировка запросов из конкретной страны; Отключение нежелательных HTTP-методов в роде PUT, DELETE, OPTIONS, PURGE и т.д. И другие подобные опции. Все это можно выполнить как с помощью графического интерфейса, так и редактированием выражений. Изменения применяются почти сразу. Заключение Правила брандмауэра Cloudflare - отличный способ без простоев повысить защиту веб-приложений на границе сети. Если еще не применяете данное решение, вы также можете рассмотреть возможность использования Cloud WAF для повышения безопасности приложений и защиты от DDoS и других сетевых уязвимостей.
img
Тестировщик проверяет созданное компанией программное обеспечение на соответствие всем требованиям качества. Этот сотрудник проверяет, всё ли работает так, как задумывали разработчики, стоит ли что-то улучшить. Существует разделение тестировщиков на QC (Quality Control — контроль качества) и QA (Quality Assurance — обеспечение качества). QC-тестировщик проверяет готовое программное обеспечение на соответствие техническим характеристикам, выполняет узконаправленные задачи по тестированию — подсвечивает проблемы на финальном этапе создания продукта. QA-тестировщики работают с программным обеспечением от этапа идеи до конечного продукта — подсвечивает проблемы продукта и внедряет инструменты тестирования на всех этапах разработки. Тестировщику не нужно уметь кодить — в отличие от разработчика, он должен не написать программу, а попытаться её «сломать», выявить недостатки в её работе. Он, скорее, думает о бизнес-процессах, выступает в роли пользователя, который может столкнуться со сложностями при использовании продукта. Тем не менее, рекомендуется знать хотя бы один язык программирования — для написания автотестов тестирования. Задачи тестировщиков, а также их высокая востребованность во всех компаниях-разработчиках ПО, делают эту профессию одной из самых простых способов попасть в IT. Что делает тестировщик: пример рабочей задачи В самом кратком виде — тестировщик получает задание по тестированию, например, проверить функционал регистрации нового пользователя. В задании вы получите конкретные шаги, которые нужно пройти — открыть сайт, внести имя пользователя и почту, задать пароль, нажать «Зарегистрироваться». Потом удалить свой аккаунт, сообщить разработчику о возникших проблемах на всех этапах пользования продуктом. Заодно вы проверяете соседние функции — иногда они могут отказывать из-за сайд-эффектов, когда ошибки в одной программе приводят к сбоям в других. Если он находит ошибки, которые не может исправить — отправляет разработчику. Примерные задачи тестировщика (не обязательно в таком порядке): Составить тест-кейсы, в которых прописано, что нужно тестировать, и в каком объёме Разработать методику тестирования ПО Провести тестирование вручную или с помощью автотестов, которые вы разработаете сами Оценить, насколько готовый продукт отвечает бизнес-целям компании Оценить вёрстку и дизайн приложения Протестировать функционал и локализацию программы Написать bug-report с указанием ошибок ПО Тестирование вручную и автоматическое Тестирование IT-продукта может проводиться вручную или автоматически. В первом случае тестировщик выполняет шаги «руками» — переходит по ссылкам, взаимодействует с интерфейсом. Во втором случае тестировщик пишет программу автотеста, которая позволяет быстрее выполнять некоторые задачи тестирования. Писать автотесты значительно проще, чем кодить сайт или программу. Тестировщики-автоматизаторы ценятся на рынке намного выше, чем те, кто проверяет программу вручную. Hard и soft-скиллы тестировщика Hard-скиллы: Знает основные принципы тестирования, разбирается в ключевых её видах различиях в методике Умеет составить тест-кейс и тест-план Знает язык SQL и умеет работать с базами данных Владеет хотя бы одним языком программирования Умеет пользоваться системами контроля качества, например, Git и CVS Soft-скиллы: Основной скилл — умение общаться. С разработчиками, с клиентом или руководством, другими коллегами в команде. Разработчики, например, могут решить, что вы пытаетесь обесценить его усилия, нарушить работу продукта из «вредности» — нужно уметь объяснить, что вы подсвечиваете проблемы, с которыми может столкнуться обычный пользователь, далёкий от IT-сферы. Тестировщику нужно встать одной ногой на место пользователей — проявить эмпатию и гибкость мышления. Смоделировать, как они могут использовать продукт, где могут не догадаться перейти по ссылке или проскроллить вниз. Если не донести важность исправления ошибки, потенциальный покупатель может назвать продукт «интуитивно непонятным интерфейсом» и отказаться от использования приложения или сайта — из-за этого пострадает и продукт, и компания. Как стать этим героем Тестировщиком можно стать без образования в университете и без курсов в интернете — вся необходимая информация есть в свободном доступе, а требования к соискателю прописаны в вакансиях IT-компаний. Будущему тестировщику необходимо получить опыт тестирования в фрилансе или на позиции junior. Обычно таким сотрудникам дают готовый сценарий для теста, который нужно провести. Как мы упомянули, важно выучить как минимум один язык программирования, что тоже возможно сделать самостоятельно или на курсах. IT-тестировщику также нужно базово понимать веб-разработку, жизненный цикл программного обеспечения, немного разбираться в бизнес-процессах. Для оценки программы по вёрстке и дизайну нужна некоторая эстетическая насмотренность. В одиночку этот путь может быть сложным, но существует множество курсов тестировщиков, которые обучают соискателей с нуля, и на выходе они получают кейсы в портфолио. К сожалению, многие курсы составляются ради самих курсов. Один из толковых — курс от Merion Academy. Вы пройдёте обучение в онлайн-формате, а материалы останутся с вами навсегда. Курс рассчитан на четыре месяца, включает в себя 30 часов лекций и практических задач. Практика в этом случае намного важнее теории — работодатели обращают внимание не на ваше обучение, а на конкретные кейсы в портфолио, успешное решение бизнес-задач на предыдущем месте работы. Также важно учитывать особенности продукта IT-компании, в которой вы хотите работать. Если это разработчик компьютерных игр, вам нужно разбираться в этой области, чтобы понимать, на что обращают внимание пользователи игры. Если это банк, вам нужно учитывать тонкости работы с защитой данных — ключевой показатель для финансовых приложений. Может пригодиться понимание работы разных операционных систем — то, что работает на Windows, может «сломаться» в Mac OS. Кому нужны тестировщики, если основную работу выполняют разработчики Тестировщики нужны везде, где разрабатываются IT-продукты — сайты, мобильные приложения, игры, онлайн-платформы, поисковики, мессенджеры и др. Разработчики владеют достаточной квалификацией в написании кода программы, но могут не обращать внимание на соответствие программы бизнес-целям компании — на это у них и времени нет. На Headhunter в сентябре 2023 года искали более 4300 тестировщиков, половина из этих вакансий — в Москве. Сколько можно получать На позиции junior соискатель может рассчитывать на зарплату от 50 до 70 тысяч рублей. Middle-тестировщики получают от 100 до 120 тысяч рублей. На позиции senior оклад можно повысить до 200-300 тысяч рублей. Типичный квест тестировщика на карьерной лестнице Тестировщик-junior имеет несколько кейсов в своём портфолио, потратил несколько месяцев на своё обучение, разобрался в основах тестирования, о которых мы писали выше — на этой позиции вы будете работать с готовыми сценариями тестирования. Спустя 1-2 года работы вы можете занять позицию middle — вы будете сами составлять сценарии, подбирать методику тестирования, проверять и, что важнее, предотвращать ошибки ПО. Senior управляет командой, разрабатывает стратегию и стандарты тестирования на всех этапах создания продукта. Не баг, а фича в работе тестировщиком — возможность уйти в разработку. Так как вы уже знаете один или два языка программирования и разбираетесь в особенностях IT-продуктов, вам остаётся научиться кодить ПО самостоятельно. Но, в отличие от разработчика, вы изначально будете понимать, какие цели будет преследовать продукт, на что будет обращать внимание конечный пользователь. Учиться самостоятельно или на курсе Тестировщиком может стать любой человек — новичок в IT или сотрудник из этой сферы, но без опыта работы тестировщиком. Разобраться в теории и наработать портфолио можно самому — на это уйдёт около года. Если хочется побыстрее и не совершить все ошибки начинающих тестировщиков, можно пройти курс с опытными преподавателями. Вжух — и через четыре месяца вы тестировщик в IT-компании с достойной оплатой и карьерными возможностями!
img
В этой статье мы рассмотрим переменные, которые отвечают за локализацию и кодировку операционной системы. Данная тема достаточно важна, т.к. некоторые прикладные сервисы требуют нестандартной кодировки или региональной локализации. В Linux системах есть основная переменная $LANG – которая задает основной язык системы. Есть и другие переменные, но они берут изначально настройки с этой основной переменной $LANG. Можно настроить отдельные какие-то переменные, но можно все же давать значение основной переменной $LANG и она будет давать значение всем остальным. Есть так же переменная LC_ALL – которая позволяет нам разом перезаписать все языковые настройки. Есть также утилита locale которая показывает кучу переменных, которые относятся к языковым настройкам. $LANG= – данную переменную обычно используют для написания скриптов, чтобы те или иные настройки установить по умолчанию для выполнения скрипта. В большинстве случаев данная настройка включает английский язык по умолчанию. Есть такая команда env, которая выводит заданные переменные в системе. И тут в частности, есть переменная которая отвечает за языковые настройки. В нашем случае LANG=en_US.UTF-8, т.к скриншот делался на операционной системе с английской локализацией по умолчанию. Мы видим en_US в кодировке UTF-8. En_US – говорит о том, что у нас используется американский английский язык. Посмотреть все переменные относящиеся к данной локализации мы можем с помощью утилиты locale. Как вы видите все остальные переменные на данной установленной операционной системе тоже американские. Почему это важно? Во-первых, это важно для логгирования. С такими настройками система будет писать файлы системных и других логов в американском формате yyyy-mm-dd (год-месяц-день: 2006-12-31), в русском формате же правильно будет dd-mm-yyyy. И при передаче логов из одной системы в другую возникнут ошибки. Другой пример - бывают нестандартные решения, допустим хранение базы данных 1С в postgre. Для того чтобы сервер приложений корректно работал с базой опять же необходима русская локализация. И таких примеров взаимодействия можно привести достаточно много. Теперь, если у нас появилась необходимость поменять какую-нибудь, переменную, например, LC_TIME то делаем следующее: LC_TIME=ru_RU.UTF-8 – задаем переменную. export LC_TIME – загружаем переменную. Мы можем сразу все настройки изменить - LC_ALL=ru_RU.UTF-8 Далее export LC_ALL. Если мы ошибемся с вводом локали (языковой пакет настроек) или в системе не загружена такая локаль, то система нам выдаст ошибку: Надо выполнить инсталляцию языкового пакета sudo apt-get install language-pack-ru Генерация файла с обновленной информацией о добавленных пакетах в систему: sudo locale-gen И после этого опять попробовать сменить. Для возврата в исходное состояние настроек мы можем выполнить команду unset LC_ALL. После выполнения данной команды все настройки языковые системы вернутся в исходное состояние. Немного о кодировке. Кодировка - это представление символов в определенном виде. Самые распространенные кодировки, используемые в Linux: ASCII – 128 основных символов; ISO-8859 – большинство латинских символов; UTF-8 -символы Unicode. Для конвертации используется утилита iconv, но есть более практический инструмент. Если нам необходимо конвертировать какой-то файл в другой, то проще всего использовать Notepad++. Открываем файл, в меню выбираем пункт кодировка. Программа покажет текущую и меняем на интересующую нас. Затем сохраняем. В случае если у нас только консольное подключение, делаем это с помощью iconv. Общий вид команды: iconv [опция] [-f кодировка 1] [-t кодировка 2] [исходный файл] [целевой файл] Установка и настройка часовых зон. Утилита tzselect позволяет осуществить поиск нужной временной зоны. Появляется мастер пошаговый, который позволяет сделать свой выбор и в конце дает инструкцию, как сделать, чтобы выбор сохранился. Вторая утилита это date, которая выводит текущую дату и время, если запустить ее без параметров, а также позволяет установить их. Опции и форматы можно посмотреть при помощи команды man date Для установки даты и времени необходимы права суперпользователя. sudo date -s “yyyymmdd hh:mm” – обратите на формат вводимых данных.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59