Мини-заметки

Тут будут собираться мини-заметки.

Содержание

Безопасность

  • untiny.com - дешифратор коротких ссылок
  • checkshorturl.com - еще один дешифратор коротких ссылок
  • revisium.com/ai - сканер AI-Bolit умеет: искать вирусы, вредоносные и хакерские скрипты на хостинге, искать редиректы в .htaccess на вредоносные сайты, искать код ссылочных бирж, таких как sape в .php файлах, определять каталоги и файлы дорвеев, искать пустые ссылки (невидимые ссылки) в шаблонах, показывать директории, открытые на запись, работать со всеми cms без исключения (joomla, wordpress, drupal, dle, bitrix, phpbb,...), отсылать отчет по email или сохранять в файл
  • antigate.com — распознавание капчи: русские и английские капчи форматов JPG, GIF и PNG. Цена — 1$ за 1000 изображений. Не более 10 % ошибок, есть возможность вывести деньги обратно, в случае если что-то не устроит.
  • captchabot.com — распознавание капчи. Точность расшифровки 80 %. Цена — 30 копеек за капчу.
  • deathbycaptcha.com — распознавание капчи. 1,39$ за 1000 распознанных капч. Среднее время распознавания 7 секунд с точностью 90 %
  • dnsviz.net - проверка dnssec на домене.
  • leakedsource.com - при помощи этого сервиса можно узнать находится ли Ваши данные, например почтовый ящик, в базах с утекшими паролям от тех или иных сайтов.
  • forum.antichat.ru - тема об уязвимостях на роутерах asus
  • Tor - анонимный серфинг при помощи браузера через цепочку прокси.
    • Как указать определенную страну из под которой нужно серфить:
      • заходим в папку Tor Browser - Browser - TorBrowser - Data - Tor
      • открываем файл torrc
      • прописываем в конце файла строку: ExitNodes {код_страны}. Для германии, например, это будет ExitNodes {de}
      • перезапускаем браузер
  • KeePass под прицелом - статья со скриптом, благадоря которому можно получить пароль от открытой базы keepass из под обычного пользователя.
  • iknowwhatyoudownload.com - по ip показывает кто и что качал с torrent-трекеров
  • codeby.net - интересный блог
  • DNS Tunneling: проходим сквозь любые брандмауэры
  • defcon.ru: Туннелирование. Проникаем в корпоративную сеть через шлюз - ssh тунель и проксирование
  • defcon.ru: Server Side Template Injection (SSTI)
  • defcon.ru: Client Side Template Injection (CSTI)
  • viewdns.info/iphistory - историях айпи-адресов для домена. На главной можно ознакомится с другими инструментами
  • ptrarchive.com - история PTR-записей для указанного IP
  • dnshistory.org - история изменения dns записей для указанного домена
  • defcon.ru: Excess XSS: комплексный учебник по межсайтовому скриптингу - достаточно кратко и понятно описано, что это и как защититься
  • observatory.mozilla.org - тут можно указать домен и получить в ответ общий бал по защищенности сайта, плюс рекомендации что именно нужно устранить
  • Header View - расширение chrome которое дает общий бал защищенности посещенной страницы\сайта, подсмотрел на хабре тут. Детали по оценке можно после этого посмотреть вот тут: observatory.mozilla.org
  • Хабр: Взлом Wi-Fi - очередная статья-инструкция, коих в интернете полно. В комментариях  по ссылке также много полезных ссылок на аналогичные статьи
  • Хабр: Конец CSRF близок - полезно почитать статью и комментарии чтобы защитить свой сайт от различных угроз
  • Хабр: Избранное: ссылки по reverse engineering
  • 5 лучших VPN с покупкой через Bitcoin - buffered.com, ipvanish.com, expressvpn.com, airvpn.org, get.ironsocket.com
  • словари и хеши:
    • hashkiller.co.uk - 829 billion (MD5), 1.45 trillion (total)
    • www.nitrxgen.net/md5db/ - 1.1+ trillion passwords (md5)
    • www.tobtu.com - 50.5 billion (md5)
    • hash-killer.com
  • Прокси:
    • https://luminati.io/ - более 30 млн. проксей, платные
    • https://rotatingproxies.com/ - тоже платные
    • https://blazingseollc.com/proxy/ - платные, прокси может меняться раз в 10-100 минут, с шагом в 10 минут.
    • http://stormproxies.com/rotating_reverse_proxies.html - доступ к 70 000 rotating проксей, могут меняться с каждым запросом, раз в 3 или 15 минут.
    • Из бесплатненького:
      • spys.one/proxys/
      • sockslist.net
      • hidemy.name/ru/proxy-list/?type=5#list
      • t.me/TgProxies

Ищем поддомены

pentest-tools.com - онлайн утилита find-subdomains-of-domain

Sublist3r — инструмент на Python для обнаружения поддоменов с помощью поисковых систем, поддерживает Google, Yahoo, Bing, Baidu, Ask, Netcraft, Virustotal, ThreatCrowd, DNSdumpster and PassiveDNS. Инсталируем и используем:

wget https://github.com/aboul3la/Sublist3r/archive/master.zip
unzip master.zip
apt-get install python-requests python-argparse
./sublist3r.py -d yourdomain.com

SubBrute — один из самых популярных и точных инструментов перечисления поддоменов. Использует открытый определитель имен в качестве прокси, так что SubBrute не отправляет трафик на целевой DNS-сервер.

wget https://github.com/TheRook/subbrute/archive/master.zip
unzip master.zip
./subbrute.py yourdomain.com

Knock — еще один инструмент на языке Python для обнаружения поддоменов. Он протестирован для Python 2.7.6. Knock находит поддомены целевого домена по списку слов.

wget https://github.com/guelfoweb/knock/archive/knock3.zip
unzip knock3.zip
#Заходим в папку knock-knock3 и запускаем:
python setup.py install
#заходим в подпапку knockpypy и запускаем:
python knockpy.py yourdomain.com

Веб-сканеры на вирусы

  • virustotal.com - онлайн проверка файлов или сайта множеством антивирусов
  • metascan-online.com - онлайн проверка файла множеством антивирусов, есть расширение под chrome, которое автоматически проверяет скачанные файлы
  • QUTTERA - поиск вредоносного кода на страницах, используя бессигнатурный анализ, обнаруживает угрозы, связанные с загрузкой или размерещением троянов, завирусованных исполняемых файлов.
  • ReScan.pro - динамический и статический анализ сайта. Поведенческим анализом детектятся скрытые редиректы, статический анализ ищет вирусные фрагменты на страницах и в загружаемых файлах, базой черного списка определяются ресурсы, загружаемые с зараженных доменов. Ходит по внутренним ссылкам и кроме основного URL проверяет еще несколько смежных страниц сайта. Также проверяет сайт по блек-листам Яндекс, Google и VirusTotal. Ориентирован на обнаружение вредоносов, рунета. Лимит на проверку – 3 запроса с одного IP в сутки.
  • Sucuri - ищет вирусный код по сигнатурам и с помощью эвристики. Отправляет запросы к нескольким URL на сайте с различными User Agent / Referer. Обнаруживает спам-ссылки, дорвей-страницы, опасные скрипты. Умеет проверять актуальные версии CMS и веб-сервера. Нет ограничений на число проверок. Из небольшого минуса обнаружилось, что список проверенных сайтов с результатами индексируется поисковыми системами, то есть можно посмотреть, какой сайт и чем был заражен.
  • Redleg's File Viewer - выполняет статический анализ сайта и подключенных на странице файлов. Можно задать параметры User Agent, referer, параметры проверки страницы. В настройках есть проверка страницы из кэша Google. Лимитов на проверку сайтов не обнаружено.

Сервисы и сайты

Проверка скорости интернета у провайдера

  • speedtest - наиболее известный и популярный. Есть возможность выбрать один из множества серверов разбросанных по всему миру скорость с которым можно проверить
  • 2ip.ru/speed - тоже есть возможность выбирать сервера, правда их количество куда меньше, чем у speedtest и в основном находятся на територии России
  • banki.ru/telecom/speedtest - download, upload скорость, без выбора сервера
  • yandex.ru/internet -  download, upload скорость и немного технической информации
  • fast.com - минимализм. отображает только download скорость

Google

  • www.google.com/alerts - сообщения, которые могут приходить на почту или в rss-лент  при появлении новых результатов поиска, статей или сообщений по заданному запросу.
  • Отключение показа Вашего имени и фото профиля в рекламе  - ищем галочку и убираем
  • google.com/ads/preferences - настройки рекламных предпочтений. Какой образ вашей личности гугл смог сделать по вашим интересам
  • history.google.com - история Вашего поиска (для сбора данных нужно включить в профиле)
  • security.google.com/settings/security/activity - список устройств, получавших доступ к вашему аккаунту. Можно узнать, не пользуется ли вашим аккаунтом кто-то ещё: посмотреть список устройств, которые получали к нему доступ, IP-адреса и местоположение.
  • security.google.com/settings/security/permissions - список приложений и расширений, обращающихся к вашим данным в Google. Можно видеть, какие права у них есть и к чему у них есть доступ. Этот доступ можно отозвать.
  • google.com/settings/accounthistory - страничка с ссылками на историю веб-поиска, поиска по youtube, историей просмотра видео на youtube и историей перемещений.
  • google.com/settings/storage - страничка со статистикой google диска: доступный объем, текущий тариф, время истечения, сколько использовано пространства.
  • google.com/fonts - Google-шрифты
  • developers.google.com/webmasters/googleforwebmasters - полезная информация вебмастерам от гугл
  • toolbox.googleapps.com/apps/dig/ - просмотр доменных записей для какого-либо домена
  • Использовать google как прокси:
    • gmodules.com/ig/proxy?url=https://elims.org.ua
    • google.ie/gwt/x?u=https://elims.org.ua
    • translate.google.com/translate?sl=en&tl=ru&u=https://elims.org.ua
    • в браузере chrome: cache:https://elims.org.ua
  • Геолокационные данные - можно предоставлять доступ друзьям о том, где Вы сейчас находитесь.
  • "Пасхальные яйца Google":
    • "Крестики-нолики" или "tic tac toe" - игра в крестики-нолики
    • solitaire - игра солитер
  • Более глубокий анализ путей конверсии в Google Analytics
  • killedbygoogle.com - список сервисов которые были закрыты гуглом, такие как google reader, picasa, google+

Youtube

  • youtube.com/live - live видео на youtube
  • youtube.com/editor - видео-редактор на youtube
  • youtube.com/my_speed - статистика скорости передачи видео на  youtube
  • Сделать Gif-ку из видео: откройте страницу с роликом и добавьте в адресе "gif" перед "youtube".
  • Найти страницу музыканта: в поиске введите #имямузыканта
  • Узнать какая музыка играет: сервис Mooma.sh распишет посекундно какие треки использовались в видео.
  • Запустите видео на смартфоне или планшете и смотрите его на большом экране через Wi-Fi (все SMART TV могут ловить сигнал Wi-Fi) - откройте YouTube на мобильном устройстве, запустите видео и найдите в соединениях ваш телевизор. Главное, чтобы ваши устройства были подключены к одной сети Wi-Fi. Подключение происходит автоматически, но можно сделать это и вручную.
  • Сtrl + правая кнопка мышки: отобразит меню, которое позволит поделится видео с определенного времени, быстро скопировать html-код для вставки и еще несколько возможностей
  • YouTube Kids - android приложение отображает только те ролики, которые можно смотреть детям.
  • Оптимизация для медленного интернета: перейдите youtube.com/account_playback и выберите опцию "У меня медленное соединение. Не надо включать HD-видео."
  • Фишки поиска: добавьте в запрос HD для поиска HD-роликов, 3D для поиска 3d-роликов
  • Извлечь аудио-дорожку: в этом поможет peggo.co или yout.com
  • Скорость проигрывания: настраивается если нажать на шестеренку в правом нижнем углу.
  • Горячие клавиши:
    • K — пауза или проигрыш
    • J — перемотка на 10 секунд
    • L — быстрая перемотка на 10 секунд
    • M — выключить звук
    • цифра 0 — в начало видео
    • цифры от 1 до 9 — перепрыгнуть на 10% — 90%
    • «+» - увеличить шрифт
    • «-» - уменьшить шрифт
  • Скачать видео: откройте страницу с роликом и добавьте в адресе "ss" перед "youtube"
  • Adblock для Youtube™ - расширение chrome блокирует рекламу в роликах

Twitter

  • twittercounter.com/pages/buttons - кнопка-счетчик twitter подписчиков.
  • dev.twitter.com/docs/follow-button - официальная кнопка-счетчик twitter подписчиков.
  • hashtags.org - частота использования того или иного хештега в twitter'е
  • analytics.twitter.com - аналитика твитов.
  • twittercounter.com - наглядно показывает рост подписчиков в Twitter за последние 3 месяца, месяц или неделю.
  • tweetstats.com -  анализ активности любого аккаунта за месяц, неделю, час. Поиск пользователей, которые взаимодействуют с вашим контентом чаще всего.
  • unfollowers.com - отображение твитер-аккаунтов которые не отвечают взаимностью на подписку, либо отписались от вас, через интерфейс сервиса можно легко подписываться на тех людей, которым вы не ответили взаимностью или отписываться от тех, кто вам не отвечает взаимностью.
  • Узнать дату регистрации twitter-аккаунта: найти в исходном коде страницы аккаунта "created_at"

Поиск работы, заработок

Биржи фрилансинга

  • www.fl.ru (ранее Free-Lance.ru) - крупнейшая биржа для фрилансеров в Рунете. Легко можно натолкнутся не адекватных исполнителей. Пример: у потенциального исполнителя про аккаунт, более 2 лет стажа, 40 позитивных отзывов, ни одного негативного,  задача сверстать AMP страницу, в качестве примера аналогичной работы показывает полностью поехавшую верстку на странице без структурированных данных, в ходе общения становится понятно что он представление не имеет что такое структурированные данные.
  • weblancer.net
  • freelancejob.ru
  • free-lancers.net
  • dalance.ru
  • freelancehunt.com
  • netlancer.ru
  • freelance.ru
  • dowork.ru
  • best-lance.ru
  • ru-freelance.ru
  • web-lancer.com
  • free-lance.su
  • acula.org
  • rentacoder.com
  • getacoder.com
  • getafreelancer.com
  • flance.ru

  • ayak.ru
  • mylance.ru
  • makesale.ru
  • lookubra.x01d.com
  • Alllance.com
  • proffstore.com

Трудоустройство

Чтобы оценить количество предлагаемых вакансий буду рядом с ссылкой на сайт отображать сколько вакансий доступно в Киеве по запросу "SEO", "Системный администратор", "Бухгалтер". Описание сайта беру из их title на главной странице, вырезаю лишь упоминание их бренда.

  • work.ua - сайт поиска работы №1 в Украине.
    • SEO - 173 вакансии за 30 дней
    • Системный администратор -  225 вакансий за 30 дней
    • Бухгалтер - 1238 вакансий за 30 дней
    • Дата проверки: 2017.02.10
  • rabota.ua - работа в Украине. Трудоустройство и поиск работы.
    • SEO - 251 вакансии за 30 дней
    • Системный администратор - 374 вакансий за 30 дней
    • Бухгалтер - 1398 вакансий за 30 дней
    • Дата проверки: 2017.02.10
  • jobs.ua - работа в Украине. Поиск Вакансий и Резюме в Украине
    • SEO - 8 вакансии за 30 дней
    • Системный администратор - 8 вакансий за 30 дней
    • Бухгалтер - 81 вакансия за 30 дней
    • Дата проверки: 2017.02.10
  • gigajob.com - порталы для поиска работы - правильный выбор для поиска работы по всему миру.
    • SEO - вакансий нет (по всей Украине 8)
    • Системный администратор - вакансий нет  (по всей Украине 7)
    • Бухгалтер - вакансий нет (по всей Украине 150)
    • Дата проверки: 2017.02.10

Заработок в соц. сетях

  • vktarget.ru - заработок вконтакте, Facebook, Instagram, Youtube, Twitter. Вступайте в группы, ставьте лайки, рассказывайте друзьям и зарабатывайте. Вывод от 25-ти рублей.
  • likesrock.com - 8 соц. сетей, вывод с 30 долларов.
  • cashbox.ru - 7 соц. сетей. Вывод - без ограничений. Делитесь постами, лайкате, просматривайте видео и ставьте "мне нравиться", учавствуйте в опросах, обсуждениях, устанавливайте приложения с Google Play и App Store
  • smmok-fb.ru - предлагает зарабатывать на лайках и прочих действиях в Фейсбук. Заданий правда не много. Вывод с 60 рублей.
  • v-like.ru - Вконтакте, Instagram и YouTube. Задания поступают постоянно. Вывод с 15 рублей.
  • vkserfing.ru - деньги за лайки, вступления в группы и репосты в Контакте. Вывод от 50 рублей
  • forumok.com - посты на форумах, лайки, репосты, подписки, комментарии, голосования, твиты и ретвиты, фоловинг, просмотр и оценка видео, размещение ссылок на вашем блоге. Вывод от 200 рублей.
  • vprka.com — существует довольно давно. Кроме лайков и репостов есть более сложные задания (квесты).
  • Sarafanka — один из старейших сервисов, но поменял владельца и говорят что стал лохотроном. Будьте бдительны.
  • B-like — лайки, вступление в группу, рассказать друзьям. Уровень оплаты и количество заданий не очень.

Оплата за прохождение тестов:

Онлайн игры

  • fullscreenmario.com - марио в браузере
  • orteil.dashnet.org/cookieclicker/ - затягивающая не замысловатая игрушка. Вы производитель печенек, прокачивайте всякие установки по произведению печенья и наблюдайте за результатом =)
  • flappy2048.com - аналог известной flappy bird, летит квадратик с цифрой, нажатие по пробелу не дает ему упасть, квадратику нужно пролететь через столбец в том месте, где на столбце указана та же цифра что и на летящем квадратике.
  • anothergame.ru/pressxtowin - нужно нажать на необходимую иконку за отведенное время, с каждым уровнем количество иконок увеличивается.
  • gameaboutsquares.com - логическая игра, в которой нужно переместить квадратики на указанные места
  • ded.increpare.com/~locus/american_dream - простенько нарисованная игра "Американская мечта", торгуете акциями и прокачиваете свою квартиру
  • armorgames.com/play/15337/3lind-game
  • game.ioxapp.com/color/ - нужно нажимать на квадратики которые отличаются по цвету.
  • superpixelquest.com - Зачетный квест о том, как лампочка перегорела, кликаем по стрелочке вправо
  • clickerheroes.com - затягивающая на пару дней флеш игра, вы прокачиваете свои характеристики для того чтобы уничтожать монстров, вторая по счету характеристика сама уничтожает монстров, кликать не нужно
  • gifdanceparty.giphy.com - забавная страничка, на которой можно добавлять на разные танцполы танцующие под разную музыку gif'ки
  • agar.io - отличная игра, где бегают по полю шарики и пожирают другие шарики, самое интересное начинается когда вы находите себе союзников

Бесплатные дистрибутивы для системы тикетов

  • Hesk.com - простой, быстрый, легкий, написан на php
  • Redmine.org - для управления проектами и задачами (в том числе для отслеживания ошибок), написан на Ruby.
  • Bugzilla — свободная система отслеживания ошибок (багтрекинга) с веб-интерфейсом.
  • Trac — средство управления проектами и отслеживания ошибок в ПО. Написан на Python
  • mantisbt.org - свободно распространяемая система отслеживания ошибок в программных продуктах (bugtracker). Написана на PHP

Аудио, видео

  • psyradio.com.ua - psy radio
  • freesound.org - бесплатные звуковые файлы для всяких звуковых оповещений.
  • best-muzon.me - скачивание понравившегося трека, музыки в хорошем качестве
  • zf.fm - тоже, скачивание треков. Нашел тут ambient-трек, который не нашелся на предыдущем ресурсе
  • putin-mp3.ru - а тут нашел ambient-трек, который не нашелся на 2 предыдущих ресурсах
  • online-audio-converter.com - толковый конвертер из одного аудио-файла в файл другого формата, можно выбирать качество
  • whoisrequest.com - полезная whois информация домена, какие были изменения

Остальные сервисы и сайты

  • graphemica.com - на сайте можно найти unicode символы-иконки, по каждому символу есть подсказки как этот символ вставлять например иконка женщины http://graphemica.com/%F0%9F%91%A9 - через css вставляется как  \01F469
  • sms-reg.com - сервис который предоставляет возможность принять sms на виртуальный номер, когда не хочется светить свой, например для регистрации в соц. сетях. Аккаунтами для соц. сетей они также приторговуют.
  • fulltextrssfeed.com - сервис который преобразует rss-ленты с анонсами записей в rss-ленты с полными записями
  • savepearlharbor.com - если на хабре удалили какую-то статью, то ее можно поискать на этом сайте.
  • www.uptimerobot.com - бесплатное наблюдение за доступностью ваших сайтов или ресурсов.
  • www.jotform.com - отличный ресурс для создания различных форм, функционал очень большой.
  • ru.airbnb.com - поиск жилья по всему миру, этот сервис поможет Вам найти хорошее жилье на несколько дней, если вам нужно посетить в какой-либо город.
  • couchsurfing.org - бесплатное место для ночлега практически в любом городе на Земном шаре.
  • scall.ru - партнерка для "секса по телефону"
  • developers.facebook.com/docs/reference/plugins/like-box - виджет facebook сообщества на сайт.
  • codepad.org - онлайн компилятор, можно тестировать как будет работать код на следующих языках: C, C++, D, Haskell, Lua, OCaml, PHP, Perl, Python, Ruby, Scheme, Tcl
  • takelink.org - качаем файлы с обменников бесплатно с "платной" скоростью.
  • microsoft.com/ru/ru/softmicrosoft - Microsoft предоставила на своем официальном сайте раздел в котором вы можете ознакомиться и скачать бесплатное и пробное ПО
  • rssicons.ru - на сайте можно найти красивые rss-иконки
  • investfunds.ua/markets - котировки украинских акций тех или иных компаний
  • bing.com/gallery - красивейшие обои от bing'а, который каждый день выкладывает по одному новому изображению к себе на главную. Перебрано до 07 декабря 2014 года
  • scriptun.com/php/online - можно проверить работу некоторых функций php в онлайне
  • www.windows93.net - windows 93 в браузере =)
  • vk.com/developers?act=health - проверка состояния api-вконтакте.
  • how-old.net - определяет возраст и пол по фотографии.
  • projectoxford.ai/demo/Emotion - определяет эмоции человека по его фотографии
  • whatmyip.co - отличный whois сервис: отображает информацию по сайту (посещаемость, какой хостинг и где находится, какие сайты находятся на этом ip, историю изменений ip, состоит ли в черных списках) и информацию о ip (провайдер, место нахождения, в какую сеть входит ip и даже ОС и браузеры замеченные за этим IP)
  • https://gist.github.com/tott/7684443 0 
  • rabota.yandex.ru — Подбор вакансий с популярных сайтов поиска работы. Там же можно посмотреть на какие сайты отправлять свои резюме
  • Zebrum Lite - CMS без базы данных, более 40 разных тем, ЧПУ, создание нескольких меню, SEO настройки — мета теги и заголовки, сайдбары и виджеты (последние посты, облако тегов и т.п.), карта сайта — для посетителей и поисковиков (Sitemap XML), вывод RSS-ленты через FeedBurner, возможность отложенной публикации, возможность задать индивидуальный шаблон для разных страниц сайта/блога;
  • GetSimple - легкая и простая система CMS без базы данных. Работает на XML файлах и содержит только все самые востребованные функции сайтов визиток.
  • Monstra - CMS без базы данных, работает на XML файлах, минимизирует html, css, js файлы для увеличения скорости загрузки сайта, адаптивна, позволяет создавать несколько пользователей (админы, редакторы, посетители), можно указывать title, keywords, description для каждой страницы.
  • Feindura - CMS без базы данных, наличие красивых URL’ов, карты сайта и возможностьвставки МЕТА тегов, WYSIWYG редактор, мультиязычная админка, плагины для расширения возможностей сайта, встроенная статистика, система бэкапов, RSS 2.0/Atom фиды, редактирование файлов и простой интерфейс, поддержка HTML 5, мультиязычность, создание приложений/плагинов, добавление сниппетов к каждой странице, работа с HTML, CSS и немного PHP.
  • vkreg.ru - при помощи этого сайта можно узнать дату регистрации анкеты. Введите только ссылку на анкету, никаких паролей и логинов вводить не нужно.
  • Winaero Tweaker - портабельный windows tweaker при помощи которого можно изменить множество системных настроек. Поддерживает Windows 7, 8, 8.1, 10.
  • javascript-compressor.com - минификация javascript скриптов.
  • retale.com - сервис предлагает ввести свой примерный годовой заработок, и демонстрирует, сколько вам нужно проработать, чтобы купить один гамбургер, кроссовки, телевизор, машину и дом. Также позволяет сравнить с зарплатами телезвезды, адвоката, медсестры, учителя, водителя, рабочего (зарплаты, очевидно, средние по США).
  • mxtoolbox.com/SuperTool - полезная утилита при помощи которой можно проверить для домена MX record, DNS, blacklist, spf SMTP и прочие параметры.
  • multitest.ua - с помощью этого сайта можно подобрать себе интернет-провайдера: указываем свой адрес и смотрим доступные провайдеры и тарифы
  • shouldiremoveit.com - этот сайт мне помог когда я очищал ноутбук от предустановленного софта. Вбиваете в поиск на сайте название программы и он описывает что это за программа, какие файлы и сервисы она устанавливает и какой процент людей ее удаляют.
  • unfurlr.com - находит оригинальный URL, спрятанный в укороченном.
  • iconfinder.com - лучшее место для поиска иконок любого размера.
  • myfonts.com/WhatTheFont - быстро распознает название шрифта с картинки.
  • findface.ru - поиск человека во вконтакте по сделанной фотографии его лица.
  • www.unitarium.com/time-calculator - калькулятор времени
  • jonassebastianohlsson.com/criticalpathcssgenerator - сервис определяет критически важные CSS-стили, которые следует загружать в первую очередь. Все остальные стили можно загружать в самом конце.
  • поисковики в tor: not EvilLOOKTORCH
  • motobit.com/util/base64-decoder-encoder.asp - преобразование файлов в base64 код, использовал для преобразования mp3-файлов.
  • freeformatter.com/base64-encoder - можно преобразовать base64 в файл.
  • yellow.test.csm-testcenter.org/useragent - на этой странице можно определить браузер по user-agent
  • abuseipdb.com - можно проверять поступала ли жалоба на этот ip, можно оставить жалобу, есть api
  • habr.com/post/182166/ - проброс порта в Mikrotik
  • jsonviewer.stack.hu
  • jsonformatter.curiousconcept.com
  • telegram.me/getidsbot - как узнать id канала в телеграме, переслать сообщение боту, он подскажет
  • http://www.dpriver.com/pp/sqlformat.htm - форматирование SQL запросов

Остальные заметки

WireShark фильтры

  • Отобразить Get-запросы:  http.request.method == "GET"
  • Отобразить POST-запросы:  http.request.method == "POST"
  • Отобразить пакеты содержащие какой-либо текст: tcp contains "text" 

IT: Joomla

  • Popup Anywhere: Joomla-модуль Popup окон. Долго искал рабочий вариант для joomla 2.5 который бы помог с отображением Pop-UP окна внешней страницы при первом посещении сайта. Именно этот модуль решил эту задачу.
  • Simple Pop-Up: еще один модуль для отображения Pop-Up окон. Правда с внешними сайтами у меня он плохо работал - переклинивало дизайн после закрытия pop-up окна.
  • Blank ModuleJoomla-модуль вставки произвольного кода.
  • Ninja RSS Syndicator: Joomla-модуль для создания RSS-лент.
  • aiContactSafe: Joomla-компонент для создания форм обратной связи
  • JCrawler: Joomla-модуль для создания sitemap.xml, карта проходит валидацию и на него Яндекс не ругается, как например на карту популярного модуля xmap (Яндекс ругается на неизвестный тег uid и itemid).
  • SmoothTop: Joomla-модуль для плавающей кнопки "Вверх"
  • jtemplate.ru - отличные бесплатные шаблоны и модули для joomla
  • design4free.org - большое количество шаблонов для joomla
  • Admiror Gallery - хорошая галерея для Joomla
  • Klixo Particles - модуль для добавления на сайт падающего снега, конфет, шариков и т.д. и тп. Распространенный минус для модулей такого класса - грузит на 100% одно ядро процессора.
  • Jshopping Last Comments (nevigen.com/ru/shop/modules/modul-poslednikh-otzyvov-joomshopping) - модуль отображения последний комментариев к отзывам в интернет-магазине на Jshopping.

Есть баг: дублируются комментарии если товар относиться к нескольким категориям. Для исправления необходимо отредактировать файл mod_jshopping_latest_comments.

Строку:

AND `r`.publish='1' order by `r`.review_id

Заменить на:

AND `r`.publish='1' group by `r`.review_id order by `r`.review_id

Вконтакте

  • Биржа Вконтакте FAQ
  • https://vk.com/share.php?act=count&index=0&url=http%3A%2F%2Felims.org.ua%2Fpritchi%2Fpritcha-o-schaste-ya-vybirayu-blazhenstvo%2F - по такой ссылке можно получать количество лайков вконтакте к указанному url
  • vk.com/pages?oid=-1&p=Описание_методов_API
  • vk.com/page-1_11226273 - список расширенных методов API вконтакте
  • vk.com/dev/methods - список методов API новой версии
  • Пример того, как во вконтакте можно вывести все гифки поста на одну страницу: vk.com/wall-30022666_28856?browse_images=1
  • socialboard.ru/stat - интересный сервис рейтинга сообществ вконтакте, можно отсортировать по подписчикам, охвату, посетителям, приросту и тд.
  • yasiv.com/vk - визуализация друзей Вконтакте

Сервисы автопостинга

  • novapress.pro - ВКонтакте, Facebook, Twitter, Одноклассники, Instagram, Livejournal, Google+. Платное, есть 10 дней пробного периода.
  • amplifr.com - ВКонтакте, Facebook, Twitter, Одноклассники, Instagram, Google+, YouTube, SoundCloud, Tumblr, Мой Мир, Vimeo, GitHub. Платное, есть 7 дней пробного периода.
  • cleverpub.ru - ВКонтакте. Есть платные и бесплатные тарифы.
  • feedman.ru - ВКонтакте, Одноклассники, Facebook, Twitter, Мой Мир, Instagram, Яндекс.Фото. Есть платные и бесплатные тарифы.
  • sociate.ru - ВКонтакте, Facebook и Одноклассники. Бесплатный
  • time2post.ru - ВКонтакте, Facebook, Twitter, LinkedIn. Бесплатный, с урезанным функционалом.
  • smmplanner.com - Instagram, Facebook, Twitter, Telegram, ВКонтакте, Одноклассники, Pinterest. Есть бесплатный тариф

IT: Остальное

  • pfSense — дистрибутив для создания межсетевого экрана/маршрутизатора, основанный на FreeBSD. pfSense предназначен для установки на персональный компьютер, известен своей надежностью и предлагает функции, которые часто можно найти только в дорогих коммерческих межсетевых экранах. Настройки можно проводить через web-интерфейс что позволяет использовать его без знаний базовой системы FreeBSD.
  • По нажатию в любом интернет-браузере комбинации CTRL+L курсор моментально переместится в адресную строку.
  • data:text/html, <html contenteditable> (в chrome проверил - работает.)
  • PHP: Если txt файл в браузере отображает русские символы в не той кодировке, то нужно сделать так: file_put_contents($myFile, "\xEF\xBB\xBF". $content); - мы добавляем BOM: UTF-8
  • Проверить отключили ли свет только у вас или во всем доме можно посмотрев на список доступных wifi-сетей
  • Если android бесконечно пытается безуспешно скачать какой-либо файл уведомляя об этом в панели уведомлений и даже перезагрузка не помогает, то зайдите в настройки-приложения-все-диспетчер загрузки и очистите данные.
  • Скриншот в android'е делается через зажимание на 2 секунды качельки звука "-" и кнопки выключения.
  • Двойной клик мышки по слову выделит его, тройной клик мышки - выделит весь абзац.
  • Проверить доставку почты: SmtpDiag.exe mymail@company.com.ua mymail2@gmail.com
  • Кликабельный div: <div onclick="location.href='url';" style="cursor: pointer;"></div>
  • Подробное и понятное описание работы mod_rewrite
  • Открываем сетевой доступ к MS SQL
  • На виртуальную машину VMware происходило медленное копирование с хостовой машины, решение - отключить DisableTaskOffload (разгрузку центрального процессора за счет вычислений на самой сетевой карте):
    • Заходим в ветку реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
    • Добавляем параметр DisableTaskOffload типа DWORD.
    • Присваиваем ему значение 1
    • Перезагружаем хостовую машину.

Железо

  • Наушники Monoprice MEP-933 (Monoprice 9927 - черные) - судя по обзору ( habrahabr.ru/post/175805 ), дешевые наушники (15$) c офигенным звучанием.
  • userbenchmark.com - Хороший сайт для сравнения железа по benchmark'ам
  • FAQ по PoE, часть 2 и часть1
  • Телевизор Philips:
    • Если Вам кажется что некоторые динамические сцены немного ускоряются ("мыльное кино", "эффект мыльной оперы") - отключаем в настройках телевизора "True Motion"
    • Если в динамических сценах изображение кажется слишком плавным, "игрушечным" - отключаем в настройках телевизора "EasyLink"
    • Также рекомендую при просмотре фильмов переключать с насыщенной яркости цвета в режим "кино", в 3D фильмах можете устанавливать насыщенность цветов в максимум.
  • Сравнение цен и поиск техники:
  • Проверка оперативной памяти:
    • В Windows есть встроенное средство проверки оперативной памяти - введите в консоли MdSched.exe (Пуск > Панель управления > Администрирование > Средство проверки памяти Windows) и согласитесь с перезагрузкой компьютера.
      • F1 - изменение параметров диагностики:
        • Набор тестов: простой, стандартный, расширенный
        • Кэш - при отключении кэша утилита обращается непосредственно к ОЗУ, это обеспечивает наиболее точное тестирование самих модулей.
        • Количество проходов
      • F10 - запуск теста
      • Более детальное описание средства и того как его запускать
    • Memtest86+ - известное и популярное решение, качаем и записываем загрузочный образ на флешку или диск и тестим оперативную память.
  • Поиск комплектующих для ремонта и ремонт:
  • если вы уронили в воду плеер, мобильный телефон или еще какую-либо технику то выключите его и положите на пару суток в банку с рисом - рис впитает всю влагу, таким образом вы высушите мокрую технику.
  • Если вы хотите научиться паять, или планируете этому научить своих детей, то рекомендуется прочесть этот комикс или скачать PDF с Яндекс.Диска, взято с этого хабро-топика
  • Формула расчета частоты wifi-канала 5G (ac): частота MHz = 5000+(5*Номер_канала)
  • Если на Panasonic факсе видите сообщение "смените барабан", то не спешите менять картридж с фотобарабаном (драм-картриджа) или картридж с тонером. Вытащите драм-картридж, найдите сбоку белую шестеренку и аккуратно проверните ее против часовой стрелки до упора, должно выйти два полных оборота шестеренки:
смените фотобарабан

Другое:

  • knifelife.ru/articles_Nog_na_kuhne.htm - 6 частей длинной статьи, которая рассказывает о всех нюансах кухонных ножей. Будет очень кстати, если вы задумались, как и я, над покупкой качественных ножей. А это видео меня впечатлило касательно остроты кухонных ножей: youtube.com/watch?v=aDjNtkrA5cY
  • blockposters.com - если нужно распечатать большой постер, на нескольких листах, то этот сервис поможет вам создать шаблон для печати: загрузите картинку, укажите, на сколько листов A4 её разделить, а затем скачайте и распечатайте файл в формате PDF.
  • globalfirepower.com - сравнение стран по глобальной огневой мощи (военной)
  • DLNA сервер Windows 10

Удобочитаемый текст:

  • в абзаце не более пяти строк
  • текст форматировать по ширине
  • в строке 65 символов вместе с пробелами - идеально
  • междустрочный интервал 1.5 от размера шрифта

Ускоряем сайт

Причины долгой загрузки сайта

  • Скорость интернета на стороне клиента - решение: сжатие и минимизация передаваемых данных
  • Географическое расположение сервера - решение: CDN
  • "Тяжелость" сайта
    • Множество подключемых скриптов - решение: объединение, минификация, вырезание лишнего, асинхронность, упорядочивание загрузки
  • Нагруженный сервер - решение: оптимизация настроек сервер, кеширование, миграция на более мощный сервер
  • Использование старых технологий, или не использование новых: amp, http2

Действия

Тестирование

Чистка кода

  • Минификация - это сжатие кода: удаление пробелов, переносов строк, комментариев, символов без которых можно обойтись. Стоит минифицировать html, js, css код.
    • CSS
      • csscompressor.com - можно выбирать разные уровни минификации\сжатия
      • cssminifier.com - сжимает лучше чем предыдущий онлайн сервис.
      • codebeautifier.com - более умная минификация, позволяет намного лучше ужать css: например определяет в каких стилях одни и те же параметры и объединяет их. Но есть одно но: не корректно обрабатывает инструкцию @media min-width, max-width, учитывайте это.
      • mrcoles.com/blog/css-unminify - Online CSS Unminifier - преобразовывает минифицированный код в читабельный вид
  • Сокращение количества запросов к базе
  • Отключение ненужных head-заголовков, в файле functions.php добавляем:
    • remove_action('wp_head','feed_links_extra', 3); //отключаем rss для записей, тегов, рубрик, комментариев и т.д.
    • remove_action( 'wp_head', 'feed_links', 2 ); //запрещаем появление ссылок на основную RSS
    • remove_action( 'wp_head', 'rsd_link' ); //отключаем. используется для публикации\редактировании записей через блог-клиенты
    • remove_action( 'wp_head', 'wlwmanifest_link' ); //отключаем. используется для публикации\редактировании записей через блог-клиент Windows Live Writer.
    • remove_action( 'wp_head', 'wp_generator' ); //отключаем вывод версии WordPress
    • remove_action( 'wp_head', 'wp_shortlink_wp_head', 10, 0 ); //отключаем короткую ссылку поста
  • В настройках плагина All in one SEO Pack установить галочку напротив "Отключить профиль в сети Google+:", таким образом убираем со страниц строку с заголовком: <link rel="author" href="admin" />
  • В файле header.php:
    • Удаляем <link rel="pingback" href="<?php bloginfo('pingback_url'); ?>" />
    • Удаляем <?php wp_get_archives('type=monthly&format=link'); ?> - отвечает за вывод заголовков link rel='archives' с ссылками на архивы помесячно
  • Сокращение количества запрашиваемых файлов
    • Обьединение css, js файлов
    • CSS-спрайты
    • Мелкие изображения храним в base64,  встраиваем в html и CSS
    • Удаляем не нужные изображения
    • Изображения в качестве однородного фона реализуем через CSS
  • Убираем прочий мусор - ссылки и лишний код
  • Меняем абсолютные ссылки на относительные
  • Минимизуруем обращения к различным доменам
  • Делаем предварительный резолвинг доменов:
    • <link rel="dns-prefetch" href="http://www.google-analytics.com"/>
  • Выводим на главной анонсы записей

Кэширование

Если видите в Google PageSpeed Insight подсказку "Используйте кеш браузера" для локальных файлов, то добавьте в файл .htaccess:

<IfModule mod_deflate.c>
 AddOutputFilterByType DEFLATE text/css
 AddOutputFilterByType DEFLATE text/javascript
 AddOutputFilterByType DEFLATE application/x-javascript
 AddOutputFilterByType DEFLATE application/javascript
 AddOutputFilterByType DEFLATE text/x-component
 AddOutputFilterByType DEFLATE text/html
 AddOutputFilterByType DEFLATE text/richtext
 AddOutputFilterByType DEFLATE image/svg+xml
 AddOutputFilterByType DEFLATE text/plain
 AddOutputFilterByType DEFLATE text/xsd
 AddOutputFilterByType DEFLATE text/xsl
 AddOutputFilterByType DEFLATE text/xml
 AddOutputFilterByType DEFLATE image/x-icon
 AddOutputFilterByType DEFLATE application/json
</IfModule>

<IfModule mod_expires.c>
 ExpiresActive On
 ExpiresByType image/gif "access 1 month"
 ExpiresByType image/jpg "access 1 month"
 ExpiresByType image/jpeg "access 1 month"
 ExpiresByType image/png "access 1 month"
 ExpiresByType image/svg+xml "access 1 month"
 ExpiresByType text/css "access 1 month"
 ExpiresByType text/js "access 1 week"
 ExpiresByType text/javascript "access 1 week"
 ExpiresByType application/javascript "access 1 week"
</IfModule>

Кешируйте динамический контент при помощи кеширующих плагинов, вот список для wordpress:

  • WP Super Cache - популярный плагин для оптимизации кэша и соответсвенно ускорения работы блога
  • Hyper Cache - Легкий wordpress-плагин, как и предыдущий предназначен для для оптимизации кэша. По отзывам этот плагин снимает нагрузку на сервер более эффективно чем WP Super Cache. (Акуратно, есть жалобы о некорректной, медленной работе)
  • Hyper Cache Extended - немного доработанный Hyper Cache, я перешел на него, когда заметил некоторые глюки на у Hyper Cache.
  • DB Cache Reloaded - плагин кэширует только запросы базы данных и достаточно хорошо ускоряет работу с ней, в описании плагина указано что такой метод кэширования даже эффективней чем html-кэширование таких плагинов как WP Super Cache.
  • W3 Total Cache - Плагин для оптимизации кэширования WordPress блога.

Сжатие

  • Сжатие изображений
    • Bulk Resize Photos - оптимизация изображений. Можно загружать в обработку сразу множество файлов, указывать на сколько обрезать изображение или изменять размеры, в пикселях, по определенной стороне или в процентах, есть добавление водяного знака, указание уровня сжатия, смена цвета фона для изображений с прозрачным фоном. Результат выдает архивом
    • BIRME - позволяет изменять размеры изображений, обрезать, сжимать с заданым уровнем компрессии, добавлять рамку, можно загружать сразу множество изображений
    • Resize Pic Online - на русском языке, при помощи ползунков можно указать изменение ширины, качества и формата (не менять, jpg,png). Не более 10 файлов за раз
    • PicGhost - загрузка до 40 изображений, каждое не более 10 мб, массовое редактирование фотографий, можно загружат фотография с facebook, flickr
    • TinyPNG - один из лучших сервисов сжатия изображений без потери качества (по результатам), обрабатывает и jpg-файлы, отображает статистику о том, на сколько эффективно изображения сжались. Сам выбирает оптимальный уровень компрессии и выполняет сжатие. До 20 изображений за раз, не более 5 мб каждое. У него есть WordPress-плагин Compress JPEG & PNG images для автоматизации этого процесса
    • Optimizilla - также оптимизирует изображения без потери качества, но можно вручную указывать уровень сжатия. отображает статистику о том, на сколько эффективно изображения сжались. Не более 20 файлов за раз
    • Использование новых форматов и алгоритмов сжатия изображений: WebP, Guetzli
    • Если есть доступ к консоли сервера, команды:
sudo find /var/www/wp-content/uploads/ -type f -name "*.jpg" -exec jpegoptim -m81 --strip-all '{}' \;
sudo find /var/www/wp-content/uploads/ -type f -name "*.png" -exec optipng -o3 '{}' \;
  • Gzip-сжатие
  • Brotli - новый (2015) алгоритм сжатия продвигаемый google, который на 20% лучше сжимает текстовые данные, чем gzip и его аналоги.
  • Оставляем ссылки на свои сайты со слешами
  • Отключаем не нужные плагины
  • Plugin Performance Profiler - плагин для анализа нагрузки создаваемой установленными плагинами
  • Плагины которые подключают JS-скрипты: дважды подумать нужен ли он и есть ли альтернатива?
  • Быстрый хостинг. Читаем как выбрать хостинг
  • Не устанавливать много социальных кнопок с тяжелым не асинхронным JS
  • Заменить синхронный код на  асинхронный код adsense, google analytics и т.д.
  • Запрещаем POST-запросы и WP-Login
  • Оптимизируем базу данных: плагин wp-optimize

PCI DSS

  • xmco.fr/panbuster.html - поиск PAN (номера кредитных карт) в указанных местах. Консольная утилита.
  • spider 2008 - www2.cit.cornell.edu/security/tools - поиск номеров кредитных карт. Утилита с оконным интерфейсом.
  • NetWrix Inactive User Tracking - неактивные учетки в Active Directory
  • Подготовка к аудиту:
    • CISCO Switch - настройки касаются портов, к которым подключены клиентские станции:
      • должны быть ограниченными через ACL, желательно по tcp\udp портам
      • на портах должен быть включенный switchport port-security. Отобразить список портов с включенной защитой: show port-security
      • на портах должны быть прописаны mac-адреса клиентских станций: switchport port-security mac-address 0890.667c.cfff. Проверить show port-security address - в столбце Type быть не должно быть Secure Dynamic, но должен быть Secure Configured
      • port-security должен опускать порт, если он обнаруживает неизвестный mac-адрес. Проверить: show port-security - в Action должно быть Shutdown
      • Убедится что розетки, которые не заняты каким-либо оборудованием отключены через shutdown на порту. Проверить: show int des - интерфейсы которые в столбце Protocol имеют shutdown, в столбце Status должны иметь admin shutdown, за исключением временно выключенного оборудования.
    • Пароли и учетные записи:
      • Не должно быть общих учетных записей, из под которых работают разные люди
      • Пароль должен содержать не менее 8-ми символов, большие и маленькие буквы и не алфавитные символы.
      • Пароль не должен совпадать с 32-мя предыдущими паролями
      • Пароль должен периодически истекать, раз в 45-90 дней
      • Учетная запись должна быть привязана к компьютеру. То есть запретить доменной записи входить на любой компьютер в домене.
      • Неактуальные учетные записи (уволенных сотрудников или те, вход с которых осуществлялся более 90 дней назад) должны быть заблокированы или удалены.
      • Пользователи не должны работать под учетной записью локального администратора
      • Доменный администратор должен работать под учетной записью с правами обычного пользователя и использовать учетную запись доменного администратора лишь в тех случаях когда это необходимо
    • Остальное:
      • BIOS должен быть защищен паролем, который периодически меняется. Например раз в год
      • В BIOS должен стоять запрет на загрузку с внешних носителей
      • Запись на флешки (а можно и чтение с флешек) должно быть заблокировано.
      • На компьютерах должны быть установлены антивирусное ПО, фаервол и обновления для ПО\ОС (критические и связанные с безопасностью)
      • Должны использоваться те ОС срок поддержки которых еще не истек (имеется в виду что закрываются обнаруженные уязвимости)
      • Должно быть включено журналирование событий и их централизованное хранение
      • Журналы и резервные копии должны шифроваться и подписываться.
      • Все изменения в системе должны проводиться с одобрения заявки от руководства
      • Сервер WSUS: все компьютеры должны быть с установленными обновлениями
      • В централизованной панели антивируса: все компьютеры должны быть в норме

Реклама

  • Правила размещения adsense:
  • Официальный форум на котором можно задавать вопросы.
  • Как показывать рекламу adsense только на определенных сайтах - мой клиент столкнулся с проблемой когда его конкурент разместил рекламные блоки на сайтах с взрослым контентом из-за чего аккаунт adsense заблокировали. Если забыли какой-либо сайт добавить, то через недельку google заботливо напомнит "За последнюю неделю ваш рекламный код много раз был обнаружен на неавторизованных сайтах. Чтобы не терять доход, авторизуйте все свои сайты, на которых размещаются объявления. Это можно сделать в настройках аккаунта."  и в настройках подскажет что это за сайты.
  • Вопросы и проблемы связанные с adsense на форуме searchengines.ru
  • Правила размещения рекламы adsense:
    • Гугл запрещает размещать рекламу так, чтоб посетитель думал что реклама является элементом интерфейса и случайно на нее нажимал. Говорят принято считать за минимальное расстояние между рекламными блоками и чем либо расстояние не мене 15 px.
    • Добавить сюда остальные правила из справки по adsense
  • Размещать небоскребы справа в сайдбаре, поближе к контенту - так как большинство людей правши
  • Убрать лишние блоки из сайдбара, чтоб небоскребы не были где-то внизу, после окончания статьи
  • В текст записи полезно добавлять изображение - это удлиняет блок контента, за счет чего небоскреб в сайдбаре лучше вписывается, не болтается где-то снизу в сайдбаре после окончания контента.
  • Размещение агрессивной рекламы на небольших, заброшенных сайтах.
  • Использование крупных рекламных блоков - лидеров CTR:
    • 336 x 280 - большой прямоугольник (начало и/или конец статьи)
    • 300 x 250 - средний прямоугольник
    • 120 x 600 - небоскреб (сайдбар)
    • 160 x 600 - широкий небоскреб (сайдбар)
    • 728 x 90 - полноразмерный баннер (шапка)
  • Adsense для поиска
    • Установить галочку "выводить результаты поиска на отдельной странице"
  • Adsense для RSS - если подписчиков много (тысячи), доход небольшой.
  • Хорошая перелинковка (много отвлекающих ссылок) отвлекает внимание от рекламных блоков.
  • Adblock:
    • dSero AdBooster - wordpress плагин  подсчитывает у скольких посетителей установлен adblock, показывает свою рекламу и готов за нее платить Вам на Paypal
    • JS-скрипт, для того, чтоб просить посетителей с включенным adblock отключить Adblock.
    • Better Stop Adblock - Wordpress-плагин который показывает страницу с отсчетом времени и просьбой отключить adblock.
    • BlockAlyzer - Adblock counter - WordPress плагин который просто подсчитывает количество страниц или посетителей с adblock
  • Идея: анализируем место нахождения, браузер, платформу посетителя и обрамляем рекламный блок адресным обращением, например для посетителей из Киева: "Специальное предложение для киевлян:", для android-пользователей: "специальное предложение для пользователей android"
  • В рекламных блоках не маловажную роль играет цветовой стиль оформления.
    •  экспериментируйте и анализируйте: sidash.ru/kak-pri-pomoshhi-eksperimentov-i-odnogo-prostogo-skripta-ya-uvelichil-svoy-dohod-v-rsya-v-neskolko-raz/
    • в большинстве случаев "красный стиль" дает больший CTR: blog.profit-partner.ru/post/34
    • использование стандартных цветовых стилей в рекламных блоках чревато низким CTR, так, как пользователи привыкли к таким блокам и на автомате не придают им значения, то есть обладают "рекламной слепотой"
  • Эффективность размещения рекламных блоков:
    • Рекомендуется не останавливаться только на Google Adsense или только на РСЯ, лучше экспериментировать и смотреть какие комбинации приносят больший доход. Стоит учесть что в рекламной сети самые верхний рекламный блок имеет наибольшую стоимость клика. Если использовать две рекламные сети, то получаем два "верхних" рекламных блока с высокой стоимостью, а не один.
    • Расположение в коде: самый верхний рекламный блок (самый верхний в коде) имеет наибольшую стоимость клика. Учитываете CTR своих рекламных блоков и старайтесь сделать так, чтобы наиболее кликабельные блоки располагались в коде выше других.
    • Частая ошибка - большие шапки сайтов со всякими слайдерами или большими заголовками. Это съедает ценное место, которое можно было бы выделить под рекламный блок.
    • Возле рекламы не должны находиться отвлекающие моменты - например иконки, которые привлекают на себя большее внимание чем реклама.
    • Рекламный блок между заголовком страницы и контентом. Данная мера достаточно агресивна для постоянных посетителей, потому можно отображать рекламный блок только в записях старше 7 дней.
    • Рекламные блоки непосредственно в тексте записи, говорят, приносят хороший доход.
    • Естественно чем больше рекламных блоков на странице, тем большую прибыль в сумме они должны приносить. Только учитывайте что большое количество рекламных блоков оставляет негативное впечатление у посетителей, тут нужно найти золотую середину.
    • Реклама на устройствах с маленьким экраном
      • Есть показатель Viewability - измеряет реальный показ объявления на экране пользователя в зоне видимости. Реклама считается просмотренной, если как минимум 50% объявления было видно владельцу мобильного устройства. Это означает, что рекламный блок, который появляется в верхней части на первом экране, будет по умолчанию считаться просмотренным, если пользователь задержал на нём свой взгляд дольше одной секунды.
      • Для улучшения видимости рекламы на мобильных устройствах рекомендуется:
        • Заменить рекламные блоки формата 320×50 на блоки 320×100
        • Использовать формат 300×250 для повышения дохода за тысячу показов.
        • Размещать рекламные блоки в верхней части экрана
        • Исключить вероятность ложных кликов, сместив рекламный блок в сторону от основного контента страницы, как минимум, на 150 пикселей.
        • Применять формат объявлений уровня страницы
          • Показываются системой AdSense в наиболее подходящий момент для увеличения дохода и обеспечения положительного восприятия пользователями
          • Не учитываются при расчете максимального количества объявлений на странице
          • Есть два типа этой рекламы:
            • Фиксированные объявления/оверлеи - прикрепленные к нижнему краю экрана. Пользователи могут закрыть их в любой момент.
            • Заставки - полноэкранные объявления, которые показываются на вашем сайте при переходе между страницами на мобильных устройствах. Пользователи могут закрыть эти объявления в любой момент.
          • Ссылки на описание:
  • Тематика ресурса:
    • Стоимость клика по рекламе зависит от вашей тематики, например реклама на сайтах туризма, продажи квартир должна за клик больше приносить дохода, чем реклама на сайте продажи пластиковой посуды.
    • Стоимость клика по рекламе зависит от конкуренции бизнеса в данной тематике
    • Поиск дорогих тем: связываем аккаунт adsense с google analytics и смотрим в google analytics “Поведение” -> “Adsense” -> “Страницы” какие странички больше всего приносят прибыль. Если смотрите показатель "Эффективная цена за тысячу показов AdSense", то рекомендую не учитывать страницы, которые посещались всего несколько раз - там статистика имеет большую погрешность, добавьте в фильтр "Показы страниц AdSense" и в поле "Больше чем" укажите какой-либо порог например 100, чем больше эта цифра, тем меньшая погрешность в статистике. Таким образом можно выявить тема статей которые приносят большую прибыль.

Оптимизация:

  • При продвижении какой-либо своей статьи, например опубликовали  новую и хотим попасть в топ, ищем на блоге где встречается ключевое словосочетание для этой статьи и ссылаемся там где это подойдет по смыслу, уместно.

Ювелирные изделия:

  • Именники, Клейма, Клейма заводов искать на сайте assay.gov.ua
  • Еще информация о клеймах - www.gold9999.ua/public/abdrag/63/
  • Что должно быть на этикетках - info.kartka.com.ua/news/930

Сделанная оптимизация:

  • Защита от хотлинкинга
  • Убрал из ссылок с анонсов якорь #more
  • Отображение даты последнего редактирования изменения записи, а не публикации
  • Кеширование страниц
  • Кеширование граватаров
  • Анализ логов Apache и уменьшение 404-х ответов.
  • Под полем для новых комментариев убрал надпись о допустимых тегах
  • Сделал ссылки не активными в комментариях менее 250-ти символов

bibviz.com - Логические нестыковки и научные противоречия в Библии

Веб-разработка

Полезные ресурсы:

  • web-standards.ru - интересный сайт на котором всего 40 записей, оценил когда прочел запись о родительском селекторе, в ракурсе его производительности и тому как браузер отрабатывает страницу по мере обработки его элементов
  • css4-selectors.com/browser-selector-test - продемонстрирует какие селекторы в вашем браузере поддерживаются или нет
  • habrahabr.ru/hub/css/ - тут все ясно, читайте новости и записи о css на хабре
  • lea.verou.me/css3patterns - css-патерны фоновой заливки, пригодятся в создании дизайна для дальтоников
  • enjoycss.com - еще паттерны с фоном
  • patternify.com - и снова паттерны
  • https://www.crazyegg.com/pricing - тепловая карта
  • https://tio.run/ - тут в онлайне можно потестить свои скрипты (когда не хочется локально создавать и запускать файл), поддерживается ну очень много языков.

PHP

Редирект на php Для редиректа на php используется функция header - с добавлением заголовка Location либо Refresh. Синтаксис:

void header ( string string [, bool replace = true [, int http_response_code]] );
  • Первый параметр string - полностью сформированная строка заголовка, который необходимо добавить (без завершающего перевода строки "\n")
  • Второй параметр replace указывает, нужно ли заменять заголовки с одинаковыми именами (true), или же добавлять в конец (false).
  • Параметр http_response_code указывает код http-ответа (300, 301, 302 и т.д.).

Примеры:

header( 'Location: http://yandex.ru/yandsearch?text=redirect', true, 301 ); // сделать переадресацию с помощью 301 редиректа на поиск в яндексе слова redirect.
header( 'Location: http://google.ru/search?q=redirect' ); // с помощью 302 редиректа переадресовывать на поиск в гугле слова redirect (При использовании Location без указания кода редиректа, по умолчанию используется 302-й).
header( 'Location: /article/page.htm', true, 303 ); // с помощью 303 редиректа переадресовать на внутреннюю страницу сайта.
header( 'Location: /', true, 307 ); // перебросить на главную страницу сайта с использованием 307 редиректа.
header( 'Refresh: 5; url=http://rambler.ru/' ); // переадресовать на главную страницу рамблера через 5 секунд после загрузки страницы.
header( 'Refresh: 0; url=/error404.html' ); // переадресовать на страницу ошибки немедленно (без задержки).

substr() substr() возвращает подстроку строки string длиной length, начинающегося с start символа по счету.

string substr ( string string, int start [, int length] )
  • Если start неотрицателен, возвращаемая подстрока начинается в позиции start от начала строки, считая от нуля. Например, в строке 'abcdef', в позиции 0 находится символ 'a', в позиции 2 - символ 'c', и т.д.
  • Если start отрицательный, возвращаемая подстрока начинается с start символа с конца строки string.
  • Если length положительный, возвращаемая строка будет не длиннее length символов. Если длина строки string меньше или равна start символов, возвращается FALSE.
  • Если length отрицательный, то будет отброшено указанное этим аргументом число символов с конца строки string. Если при этом позиция начала подстроки, определяемая аргументом start, находится в отброшенной части строки, возвращается пустая строка.

Загрузка текстового файла в одну строку и сохранение символов перевода строки

$jokes = file_get_contents('/jokes.txt');#читаем весь файл в 1 строку
$jokes = str_replace(PHP_EOL, '<br>', $jokes); #заменяем символы перевода строки на "<br>"
$jokes_array = explode('[joke]',$jokes); #разбиваем анекдоты в массив по разделителю [joke]

Отправка данных через POST

$data = array( #массив с отсылаемыми данными
 'message' => $text,
 'v' => '5.24',
 'access_token' => $token,
);
$options = array(#тут ничего не меняем
 'http' => array(
  'header' => "Content-type: application/x-www-form-urlencoded\r\n",
  'method' => 'POST',
  'content' => http_build_query($data),
 ),
);
$context = stream_context_create($options);
$result = file_get_contents($uri, false, $context);

Глобальная переменная Если в функции нужно изменить переменную как глобальную, то внутри функции ее нужно объявить как глобальную, а потом уже совершать над ней действия:

function test()
{
 global $x, $y;
 $y = $x + $y;
}

JS

  • lisperator.net/uglifyjs - минификация js, используется рекомендуемая гуглом библиотека UglifyJS

Ввод даты/времени через календарь:

Таблицы с фильтрами посредством js:

CSS

Полезные ссылки

Минификация CSS

  • csscompressor.com - можно выбирать разные уровни минификации\сжатия
  • cssminifier.com - сжимает лучше чем предыдущий онлайн сервис.
  • codebeautifier.com - более умная минификация, позволяет намного лучше ужать css: например определяет в каких стилях одни и те же параметры и объединяет их. Но есть одно но: не корректно обрабатывает инструкцию @media min-width, max-width, учитывайте это.
  • mrcoles.com/blog/css-unminify - Online CSS Unminifier - преобразовывает минифицированный код в читабельный вид

Выравнивание изображения по вертикали и горизонтали HTML:

<div id="parent">
 <div id="child">
  <img>изображение</img>
 </div>
</div>

CSS:

#parent {
 display: table; /*вертикаль*/
}
#child {
 display: table-cell; /*вертикаль*/
 vertical-align: middle; /*вертикаль*/
 width:50%; /*горизонталь*/
 text-align: center; /*горизонталь*/
}
#child img {
 display: inline-block !important; /*горизонталь*/
}

Еще способ центровки:

img {
    display: block;
    margin: 0 auto;
}

И еще:

img {
    position: absolute;
    top: 0; bottom:0; left: 0; right:0;
    margin: auto;
}

И еще вертикальная:

html:

<div class="outer">
    <img src="..." alt="" >
</div>

CSS:

.outer {
    height: 100px;
    position: relative;
}
.outer img {
    position: absolute;
    margin: auto;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
}

И еще можно посмотреть вот тут в комментах

Устанавливаем табличный вывод для родительского элемента div, а вложенный элемент div выводим как ячейку таблицы. Теперь можно использовать свойство vertical-align для внутреннего контейнера. Все, что находится в нем, будет центрироваться по вертикали. Вот тут можно прочитать разные выравнивания способы: ruseller.com/lessons.php?rub_id=2&id=1248

Горизонтальное выравнивание:

<style>
 .outer {
  text-align: center; /* Для IE<8 */  
 }
 .inner {
  width: 100px;
  margin: auto; /* Для IE8+ и других браузеров */
}
</style>
<div class="outer">
 <div class="inner">
  Контент
 </div>
</div>

Значение margin-left:auto/margin-right:auto заставляет браузер выделять под margin всё доступное сбоку пространство. А если и то и другое auto, то слева и справа будет одинаковый отступ, таким образом элемент окажется в середине.

Отображение блоков только на android и ios

Для этого понадобится css код и javascript.

CSS:

.visible-android {
display:none;
}
.visible-ios {
display:none;
}
.on-device .visible-android, .on-device .visible-android {
display:inherit;
}
.device-ios .visible-android {
display:none !important;
}
.device-ios .hidden-ios {
display:none !important;
}
.device-android .hidden-android {
display:none !important;
}
.device-android .visible-ios {
display:none !important;
}

Если нужно чтобы какой-то блок отображался например на android, то устанавливаем ему css клас .visible-android

Javascript:

var classNames = [];
if (navigator.userAgent.match(/(iPad|iPhone|iPod)/i)) classNames.push('device-ios');
if (navigator.userAgent.match(/android/i)) classNames.push('device-android');

var html = document.getElementsByTagName('html')[0];

if (classNames.length) classNames.push('on-device');
if (html.classList) html.classList.add.apply(html.classList, classNames);

Это не будет работать в старых браузерах, которые не поддерживают javascript функцию html.classList Код нашел вот тут: gist.github.com/jsoverson/4963116 Если же нужно будет сделать, так, чтобы работало и на старых браузерах, то должно помочь изучение вот этих ссылок:

Регулярные выражения, regexp:

  • ^.{130,}\r\n - все строки более 130 символов, в notepad++
  • ^(.)\1{2,}\r\n - находит строки которые состоят только из одного повторяющегося символа
  • жадность: ".*", ленивость: ".*?"
  • отрицание: ?!текст_которого_не_должно_быть
  • еще одно отрицание: [^\W\s\d], то есть то что внутри: [^]

HTML

Атрибут Role в HTML5 - позволяет указать назначение блока/элемента страницы при взаимодействии пользователя с сайтом. Значения Role:

  • banner - главный заголовок или внутренний заголовок страницы. Например логотип и название сайта. Рекомендуется использовать не больше одного раза на странице.
  • complementary - информационный блок, отделенный от основного содержания ресурса.
  • contentinfo - обобщающая информация о содержании страницы ( к примеру футер сайта ). Рекомендуется использовать не больше одного раза на странице.
  • definition - указывает определение термина или понятия.
  • main - выступает в качестве основного содержания документа. Рекомендуется использовать не больше одного раза на странице.
  • navigation - набор элементов предназначенных для навигации по документу или связанным документам. Рекомендуется использовать не больше одного раза на странице.
  • note - заметка ( вспомогательная информация) к основному содержанию ресурса.
  • search - указывает область для поиска по содержимому.
  • alert - сообщение с важной и, как правило срочной, информация.
  • alertdialog - сообщение, которое содержит важную информацию, и первоначальный акцент переходит элементу в диалоговом окне.
  • application - область объявленная как веб-приложение, в отличие от веб-документа.
  • article - раздел состоящий из композиции, которая в свою очередь образует самостоятельную часть документа, страницы или сайта.
  • button - кнопка, позволяющая пользователю вызвать какие-либо действия.
  • checkbox - имеет три возможных значения: истина, ложь, или смешанное.
  • columnheader - ячейка таблицы, содержащая заголовок для столбца.
  • combobox - вариация селекта; аналогично textbox, позволяющая пользователям печатать для выбора опции, или при печати добавить новую опцию к списку.
  • dialog - сообщение, предназначенное для прерывания обработки текущего приложения, для ввода пользователем какой-либо информации или требующее от него какое-либо действие.
  • directory - список ссылок на части группы, например содержание.
  • document - область, содержащая информацию, которая объявлена как содержимое документа, в отличие от веб-приложений.
  • form - ориентир области, которая содержит коллекцию элементов и объектов, которые, в целом, объединяются, чтобы создать форму.
  • grid - сетка интерактивного управления, которая содержит элементы сведенные в таблицу данных, в виде строк и столбцов, как таблица.
  • gridcell - ячейки в сетке или древовидная сетка.
  • group - набор объектов пользовательского интерфейса, которые не предназначены для включения в итоговую страницу или содержимое, вспомогательных технологий.
  • heading - заголовок для раздела страницы.
  • img - контейнер для набора элементов, которые формируют изображение.
  • link - интерактивная ссылка на внутренний или внешний ресурс, который при активации заставляет браузер пользователя перейти к этому ресурсу.
  • list - группа неинтерактивных элементов списка.
  • listbox - виджет, который позволяет пользователю выбрать один или несколько элементов из списка вариантов.
  • listitem - один элемент в списке или содержании.
  • log - тип интерактивной области, где новая информация добавляется в осмысленном порядке, а старая может исчезнуть.
  • marquee - тип интерактивной области, где не существенная информация часто меняется.
  • math - контент, который представляет собой математическое выражение.
  • menu - тип виджета, который предоставляет выбор списка вариантов для пользователя.
  • menubar - представление menu, которое обычно остается видимым и, как правило, представлено горизонтально.
  • menuitem - опции в группе выбора содержащиеся в menu или menubar.
  • menuitemcheckbox - чекбокс пункта menu, который имеет три возможных значения: истина, ложь, или смешанное.
  • menuitemradio - отмечаемый пункт меню в группе menuitemradio, из которых только один может быть выбран одновременно.
  • option - выбираемый элемент в списке выбора.
  • presentation - элемент чья семантически неявная роль не будет отображаться на доступности API.
  • progressbar - элемент, который отображает ход статуса задач, занимающих много времени.
  • radio - отмечаемый пункт в группе таких же пунктов, из которых только один может быть выбран одновременно.
  • radiogroup - группа переключателей.
  • region - большая область веб-страницы или документа, которую автор счел достаточно важной, чтобы включить в основную информацию страницы или оглавление, например, область страницы содержающая спортивную статистику событий онлайн.
  • row - ряд ячеек в grid.
  • rowgroup - группы, содержащие один или несколько элементов row в grid.
  • rowheader - ячейка содержащая заголовок для row в grid.
  • scrollbar - графический объект, который управляет прокруткой содержимого области просмотра, независимо от того, полностью ли содержание отображается в области просмотра.
  • separator - разделитель, который разделяет и отличает разделы содержимого или группы пунктов menuitems.
  • slider - интерфейс ввода для пользователя, когда пользователь выбирает значение из заданного диапазона.
  • spinbutton - форма диапазона, где пользователь может выбрать из числа дискретных решений.
  • status - контейнер, содержание которого носит рекомендательный характер для информирования пользователя, но не является достаточно важным.
  • tab - вкладка, представляющая из себя механизм для выбора вкладки необходимой пользователю.
  • tablist - список элементов tab, которые являются ссылками на tabpanel элементы.
  • tabpanel - контейнер для ресурсов связанных с tab, где каждый tab содержиться в tablist.
  • textbox - поле ввода, которое предоставляет ввод в свободной форме текста.
  • timer - тип интерактивной области, содержащую числовой счетчик, который указывает на количество затраченного времени от начальной точки, или время, оставшееся до конечной точки.
  • toolbar - набор часто используемых функциональных кнопок, представленых в компактной визуальной форме.
  • tooltip - контекстное всплывающее окно, которое отображает описание элемента.
  • tree - тип списка, который может содержать подуровни вложенных групп, которые могут быть свернуты и расширены.
  • treegrid - сетка, чьи строки могут быть свернуты и расширены так же как и в tree.
  • treeitem - опция элемента tree. Этот элемент внутри tree, может быть свернут или расширен, если имеет вложенный подуровень.

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

<a href="/" role="banner"><img src="logo.png" alt="" />Мой блог</a>
 
<nav role="navigation">
 <ul>
 <li><a href="/">Главная</a></li>
 <li><a href="/news">Новости</a></li>
 <li><a href="/contacts">Контакты</a></li>
 </ul>
</nav>
 
<main role="main">
 <h1>Новость 1</h1>
 <p>Привет мир! Я завтра буду пить пиво</p> 
 <p role="definition">*Пиво - слабоалкогольный напиток, получаемый спиртовым брожением солодового сусла с помощью пивных дрожжей, обычно с добавлением хмеля.</p>
 <p role="note">**пью пиво с 20 лет</p>
</main>
 
<div role="contentinfo">
 <p>Блог elimS</p>
</div>

Код для установки спойлера

<div class="spoil"> 
 <div class="smallfont">
  <input type="button" style="padding:0;border:none;background:none;color:blue;" value="Нажмите чтобы читать далее" class="input-button" onclick="if (this.parentNode.parentNode.getElementsByTagName(&#039;div&#039;)[1].getElementsByTagName(&#039;div&#039;)[0].style.display != &#039;&#039;) { this.parentNode.parentNode.getElementsByTagName(&#039;div&#039;)[1].getElementsByTagName(&#039;div&#039;)[0].style.display = &#039;&#039;; this.innerText = &#039;&#039;; this.value = &#039;Свернуть&#039;; } else { this.parentNode.parentNode.getElementsByTagName(&#039;div&#039;)[1].getElementsByTagName(&#039;div&#039;)[0].style.display = &#039;none&#039;; this.innerText = &#039;&#039;; this.value = &#039;Текст спойлера&#039;; }"/>
 </div> 
 <div class="alt2"> 
  <div style="display: none;">
   Тут Текст спойлера   
  </div> 
 </div> 
</div>

Веб-разработка: остальное

Apache

Как узнать, какие модули Apache загружены в текущий момент?

  • apache2ctl -l - get a list of only static modules
  • apache2ctl -M - get a list of both static and shared modules

Amazon Web Services

  • Управление AWS осуществляется через веб интерфейс (AWS console) или Command Line Tools.
    • В консоли есть все сервисы AWS, но функциональность настройки обрезана.
    • В командной строке же можно более гибко настроить тот или иной сервис, так же доступны закрытые в консоли функции.
  • Amazon Cloud Watch - это сервис мониторинга облачных ресурсов AWS и приложений. С помощью этого сервиса можно наблюдать за различными метриками и создавать разного рода проверки и оповещения с помощью которых контролируются важнейшие показатели работы ОС.
  • EBS — это винчестер. Вы можете сказать — сделай мне винт размером в 25 гигов (можно от 1 Gb до 1Tb) и подключи его к такому-то instance (созданный винт будет называться volume). В результате в вашей системе появляется новый девайс, дальше вы его монтируете, форматируете и работаете с ним. Все что было записано на него — сохраняется не зависимо от жизни instance. Так же можно легко делать snapshot-ы (например для организации backup-ов)
  • S3 (Amazon Simple Storage) — аналог ленточного накопителя. Туда можно сохранять большие файлы и хранить их там вечно
    • Файлы хранятся в отдельных бакетах (bucket), в которых можно создавать директории и поддиректории.
    •  Бакеты хранятся в разных регионах (Region). Доступны следующие регионы: US Standard, US West (Oregon), US West (Northern California), EU (Ireland), Asia Pacific (Singapore), Asia Pacific (Tokyo), South America (Sao Paulo), и GovCloud (US).
    • К бакетам можно применять разного рода политики безопасности: делать их приватными, публичными, а так же разделять права между пользователями. например, можно открыть вебсайт: bucketname.s3-website-us-east-1.amazonaws.com и хранить там статический контент.
    • S3 так же предполагает версионность файлов. Всегда можно восстановить файл предыдущей версии, т.е. откатиться до нужного состояния.
    • Неймспейс названий бакетов один на всех пользователей, по этому названия бакетов должны быть уникальными
    • Ценовая политика: S3 оплачивается помесячно за объём хранимых данных, за запросы и за исходящий траффик. Так же существует Free Tier — 5Гб места, 20.000 запросов скачки, 2.000 запросов закачки и 15 гигабайт трафика в месяц бесплатно.
    • Классы хранилищ Amazon S3
    • Цены на Amazon S3
  • Amazon Relational Database Service (RDS) - сервис баз данных, то есть отдельные VPS серверы, оптимизированные для работы с базами данных. Предоставляется сама база данных, вам сервер администрировать не нужно. Доступны MySQL, Oracle, Amazon Aurora, PostreSQL, MariaDB, SQL Server. Настраивается размер, политики безопасности, репликация, снепшоты и автоматические бекапы.
    • Ценовая политика: за каждый час использования рабочего инстанса, его стораджа, отдельная плата берётся за хранение бекапов и снапшотов, трафик. Так же считается количество I/O операций. Так же существуют Резервации (Reservation) — оплата сразу суммы за 3-4 месяца, после чего на год или 3 года почасовая ставка за работу инстанса значительно снижается. В среднем в полтора раза.
    • Amazon Aurora - более высокопроизводительное решение по сравнению с MySQL (в 5 раз) или PostgreSQL (в 2 раза), замена таким высокопроизводительным базам как Oracle
    • Цены на RDS MySQL
    • DB Instance Class - характеристики и описания DB инстансов для RDS
  • Cloudfront - CDN от Amazon.
    • Веб-консоль управления
    • Раздача (Distribution) создаётся и закрепляется на бакет S3, либо же на другой источник, который задаётся пользователем.
    • Переиндексация: на странице cloudfront нажимаем на нужном ID, переходим на вкладку Invalidations, жмем кнопку "Create Invalidation" и указываем маску-путь того, что нужно переиндексировать, например /images/uploads/*
    • Включение Gzip
    • Включить HTTP2 можно на вкладке General нажав на кнопку Edit - одна из опций позволяет включить http2
  • Amazon SES (Amazon Simple Email Service) - почтовый сервис от Amazon: отправка, получение, статистика.
    • Цены тут: при вызове Amazon SES непосредственно из инстанса Amazon EC2 или через AWS Elastic Beanstalk можно ежемесячно отправлять 62 000 сообщений любым адресатам, по умолчанию лимит - 200 сообщений, но можно бесплатно поднять. Все клиенты AWS ежемесячно могут бесплатно передать 1 ГБ данных. Оплачивается в SES за каждые 10.000 посланных писем в месяц. Так же плата взимается за трафик, который генерируется при отправке писем.
    • SES позволяет слать письма через API — непосредственно из приложения. Существуют десятки библиотек, плагинов дающих возможность слать письма обходя SMTP методы. Для тех приложений, которые не могут быть интегрированы с SES через API — существует опция включения SMTP сервера с авторизацией по связке логин-пароль.
  • Amazon WorkMail - Exchange Server в amazon облаке или его аналог, клиенты подключаются через outlook или браузеры, совместим с Exchange 2010, 2013
  • Route53 — это облачный DNS сервис от Amazon.
    • Отличительной возможностью Route53 является его интеграция с другими сервисами AWS, такими как EC2 и балансировщиком нагрузки, S3, CloudFront.
    • Балансировщик нагрузки не имеет статического адреса, но имеет публичое DNS имя. Используя сторонние сервисы, нам бы приходилось использовать CNAME записи, чтоб ссылаться на это имя, но в Route53 имеется специальный тип записей — ALIAS на балансировщик нагрузки. Это позволяет без пропагаций использовать полную функциональность балансировщика. Так же инетересно, что можно воспользоваться WRR (Weighted Round Robin) записями, которые позволяют делать балансировку нагрузки на уровне DNS.
    • Ценовая политика
  • AWS Identity and Access Management (IAM) - Сервис IAM позволяет контролировать права доступа ко всем остальным сервисам AWS. Имея штат сотрудников по всем правилам нужно разграничить доступ администраторов, разработчиков, тестирощиков и так далее. В пределах одно аккаунта могут быть создано до 80 учётных записей пользователей, объединённых в группы, к которым в свою очередь применяются политики безопасности. Использование IAM абсолютно бесплатно. Плата взимается только за ресурсы, потребляемые пользователями.
  • AWS WAF – брандмауэр, позволяющий защитить от сетевых эксплойтов или от чрезмерного ипользования ресурсов. Позволяет создавать правила для фильтрации сетевого трафика на основе условий, которые включают в себя IP-адреса, заголовки и тела HTTP-сообщений или специальные строки URI
  • Elastic Load Balancing - балансировка нагрузки, автоматическое распределение входящего трафика между несколькими инстансами Amazon EC2.
  • Калькулятор стоимости сервисов
  • RSS блога на русском
  • RSS о нововведениях
  • Amazon Marketplace Web Service (Amazon MWS) - не относиться к Amazon AWS, это api для автоматизации процесса продажи товаров через площадку amazon.com.

     

     

     

     

     

     

EC2

Amazon Elastic Compute Cloud (EC2) - виртуальные сервера (Amazon EC2 Instance), 2 вида хранилищ данных, а так же балансировщик нагрузки (Load Balancer). Виртуальная машина без винтов, винты к ней подключаются как отдельный сервис. Этот сервис позволяет запускать image операционной системы (запущенный image называется instance). Но — он не обеспечивает хранение каких-либо данных — пока instance работает — хорошо — но если вы его остановили — все. при следующем запуске вы вернетесь к исходному image

  • EC2 позволяет запускать заранее сконфигурированные образы ОС: Amazon Linux, Red Hat EL, Suse ES, Windows 2008, Oracle EL и тд.
  • Можно создавать свои образы (AMI — Amazon Machine Image)
  • EC2 инстансы объединяются в группы безопасности (Security Groups) с возможностью ограничения доступа по портам с IP или подсетей
  • Балансировка нагрузки и автомасштабирование являются очень важными функциями EC2. Вы можете создать правила при которых станет возможно автоматически увеличить количество серверов, например, если один или несколько серверов не справляются с нагрузкой.
  • EBS (Elastic Block Storage) — это один из типов хранилища в EC2. Особенность его такова, что диски, создаваемые по этой технологии не зависимы от VPS-ноды и расположены на специальных Storage серверах, в отличии от Instance хранилищ, которые расположены непосредственно на серверах виртуализации.
    Используя EBS, к запущенным серверам можно “наживую” добавлять диски любого размера.
  • Elastic IP адреса дают возможность быстро менять сервер, который под этим ip работает
  • Создание мгновенных образов (Snapshot) позволяет создать слепок диска и использовать его в качестве исходника для AMI (Amazon Machine Image), а так же для простой резервной копии ОС.
  • Ценовая политика: почасовая, некоторые подсервисы, такие как EBS имеют помесячный биллинг. Для каждого подсервиса есть свой отдельный биллинг по заведомо утверждённой цене в час или в месяц. Существует так называемая резервация (Reservation) — оплачивается сразу 3-4 месяца работы сервера, после чего, час работы сервера стоит в ~1,5 раза дешевле.
  • Если нужно отправлять письма в больших количествах, то нужно написать просьбу о снятии лимитов, начальное ограничение 10к в день по 5 штук в секунду. В последствии можно автоматически увеличить до 1м в день.

Ссылки:

Oracle

Запуск, остановка и статус Oracle Enterprise Manager Console

Переходим в папку cd $ORACLE_HOME/bin и используем команды:

./emctl start dbconsole
./emctl stop dbconsole
./emctl status dbconsole

Запуск, остановка, статус listener

В той же папке команды:

lsnrctl start
lsnrctl stop
lsnrctl status

Статус баз:

Запускаем SQLPLUS и вводим:

SELECT INSTANCE_NAME, STATUS, DATABASE_STATUS FROM V$INSTANCE;

Количество объектов и их суммарный объем в каждой из схем

select obj.owner "Owner", obj_cnt "Objects",
decode(seg_size, NULL, 0, seg_size) "size MB"
from ( select owner, count(*) obj_cnt from dba_objects group by owner) obj,
( select owner, ceil(sum(bytes)/1024/1024) seg_size from dba_segments group by owner) segment
where obj.owner = segment.owner(+)
order by 3 desc, 2 desc, 1;

Размеры каждого объекта в определенной схеме

select
 owner as "SCHEMA" 
 , segment_name as "Object Name"
 , segment_type as "Object Type"
 , round(bytes/1024/1024,2) as "Object Size (Mb)"
 , tablespace_name as "Tablespace"
from dba_segments Where owner = 'Какая_то_схема'
order by round(bytes/1024/1024,2) desc;

Data pump

Дамп должен находится в папке: $ORACLE_BASE/admin/имя_базы/dpdump

Команда импорта:

impdp system/Пароль  full=y content=ALL dumpfile=имя_дампа.dmp logfile=лог_файл_импорта.log  EXCLUDE=STATISTICS

Если выскакивают вот такие ошибки:

ORA-12899: value too large for column Имя_Столбца (actual: 37, maximum: 20)

То сначала импортируем только структуру:

impdp system/пароль full=y content=metadata_only dumpfile=имя_дампа.dmp logfile=лог_импорта.log EXCLUDE=STATISTICS

Правим в столбцах их размер и потом импортируем данные:

impdp system/пароль full=y content=data_only dumpfile=имя_дампа.dmp logfile=лог_импорта.log EXCLUDE=STATISTICS

Посмотреть всех пользователей базы данных и их состояние (заблокирован ли, когда истекает пароль и тд.): SELECT * FROM dba_users;

Посмотреть список всех функций и процедур: SELECT * FROM ALL_OBJECTS WHERE OBJECT_TYPE IN ('FUNCTION','PROCEDURE','PACKAGE')

Mikrotik

Задача: оповещать телеграмм сообщением о новых мак-адресах на микротик DHCP-сервере.

Сообщения будут такого вида:

New Mac Address On Mikrotik
MAC: 12:34:56:78:90:12
IP: 192.168.12.34
Hostname: elimS-Host

В настройках DHCP сервера имеется параметр: Lease Script.

Туда вбиваем:

:if ($leaseBound = 1) do={
/ip dhcp-server lease;
:foreach i in=[find dynamic=yes] do={
:local dhcpip
:set dhcpip [ get $i address ];
:local clientid
:set clientid [get $i host-name];

:if ($leaseActIP = $dhcpip) do={
:local comment "New IP"
:set comment ( $comment . ": " . $dhcpip . ": " . $clientid);
/log error $comment;
/tool fetch url="https://api.telegram.org/botтут_телеграм_токен/sendMessage\?chat_id=тут_телеграм_чат_айди&text=New+Mac+Address+On+Mikrotik%0AMAC:+$leaseActMAC%0AIP:+$leaseActIP%0AHostname:+$clientid"
}
}
}


За основу взял скрипт отсюда

Еще ссылки по теме:

Ссылки по Mikrotik:

Полезные ссылки

Установка Oracle:

Data Pump, expdp, impdp:

Аудит:

Понравилось? =) Поделись с друзьями:

Обсудить