Задать вопрос
  • Как убрать задержку на сенсорных экранах при mousedown?

    @NQUAREx Автор вопроса
    document.addEventListener('touchstart', (event) => {
    	if (event.changedTouches[0].clientX ...) {...}
    })
    Ответ написан
    Комментировать
  • Есть ли какой монитор изменения прав доступов к папке и файлам?

    trapwalker
    @trapwalker
    Программист, энтузиаст
    Чаще всего такое бывает из-зза совокупности неочевидных проблем в конфигурации логов, скриптов запуска логгируемуго софта и сиетемы ротации или бэкапа логов.
    Например, описанная вами ситуация может быть порождена следующим стечением ошибок и обстоятельств.
    Бывает, что на бэкенде в один и тот же лог-файл пишут несколько скриптов. Это уже конкуренный доступ к файлам и не есть хорошо. Такое случается, когда по образцу одной проги с логгированием потом делают другую, а конфигурация логгирования не предусматривает такую ситуацию. Вот когда два таких скрипта работают и логи в конфликтный файл пишутся не часто, могут случиться такие проблемы.
    Ещё один из таких скриптов может запускаться под рутовыми правами, а другой после него под пользовательскими. Если запущщеный от рута скрипт вызвал ротацию лог-файла, то новый файл мог создаться уже с рутовыми правами по умолчанию, а это значит, что другой скрипт (или этот же, но запущеный от обычного пользователя) уже не сможет в него писать.

    Как ситуация может исправиться сама собой? Да так же. Напрмер у вас запущен по крону скрипт бэкапа или той же самой ротации, который тоже работает от рута, но писался девопсами и учитывает историю с правами пересоздавая файл от имени нуного юзера или с нужными правами.

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

    Важно. чтобы в каждый отдельный лог-файл писал один и только один процесс. Он же занимался его ротацией (если, к примеру, вы логгируете стандартной питонячьей либой). Ещё хорошая идея не засталять софт писать логи в файлы, пусть пишет логи в stderr и/или stdout, а оттуда вы их на уровне системы перенаправите куда положено и отфильтруете как надо. если необходимо.

    Итак. Перым делом смотрите какие процессы пишут файл, какие скрипты трогают эти файлы (бэкапы. ротация), посмотрите в crontab, посмотрите конфигурацию сотфа в плане логов и всё должно проясниться. Делать систему мониторинга за изменениями в файловой системе возможно, но это ректальная тонзиллэктомия получаетя какая-то...

    UPD:
    Почему-то не обратил внимания, что речь о логах mysql. Но всё по-прежнему: конфиг логгирования и ротации, распсиание и механизм ротации и бэкапа, поиск по конфигам фрагментов этого пути на предмет аномалий и повторов.
    Ответ написан
    Комментировать
  • Где принято писать media-запросы при работе с SASS?

    delphinpro
    @delphinpro Куратор тега CSS
    frontend developer
    Староверы пишут в отдельном файле.
    Потому что они так привыкли со времен, когда препроцессоров не было.
    Или потому что не знают об автоматическом комбинировании запросов при сборке, боясь раздувания кода.

    Нормально – это верстать максимально независимыми блоками, а отсюда следует единственный правильный вывод – стилевое описание блока должно быть целиком в одном месте.
    Ответ написан
    6 комментариев
  • Почему элементы вырывают часть изображения бэкграунда?

    Может потому что ты бекграунд задаешь в "*" ?) Ты вообще в курсах, что значит селектор звездочки? Это значит, что твой бекграунд щас применяется ко всем тегам на странице. Если ты хочешь только как фон, то целесообразнее будет в body{} прописать background.
    Ну и поизучать CSS
    Ответ написан
    Комментировать
  • Как решить проблему с отображением фото в flask??

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Flask
    Седой и строгий
    Во-первых, каталог static должен быть только для статики - стилей, js-скриптов, иконок и другого хлама, который может добавить или удалить только разработчик в момент релиза. Заведите для динамического медиа-контента отдельный каталог. Во-вторых, вам стоит почитать об абсолютных и относительных путях - это примитивные основы.
    Ответ написан
    6 комментариев
  • Есть ли способ красиво вызвать addeventlistener несколько раз?

    Если это элементы с разными классами и т.д., то можете собрать отдельную коллекцию элементов в массив, затем через forEach пройтись по этому массиву и навесить им слушатель, если я правильно понял вопрос.
    Ответ написан
    2 комментария
  • Как сократить код?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    const div = document.createElement('div');
    [
      ['text', 'name', 'Введите имя'],
      ['text', 'phone', 'Введите номер телефона'],
      ['email', 'email', 'Введите адрес электронной почты'],
    ].forEach((d) => {
      const input = document.createElement('input');
      [input.type, input.name, input.placeholder] = d;
      div.appendChild(e);
    }
    // ...
    document.body.appendChild(div);
    Ответ написан
    Комментировать
  • Как заставить WebStorm автоматически заворачивать длинные строки?

    miminari13
    @miminari13
    view - active editor - use soft wraps
    это для вебшторма, но думаю в phpstorm тоже самое
    Ответ написан
    3 комментария
  • На что установить сервер?

    Adamos
    @Adamos
    "Дедик" - это dedicated server, полностью ваш железный сервер в чьем-то датацентре.
    Да, на нем можно без всяких раздумий запустить винду и елозить мышкой. Но он стоит, как крыло от самолета, и вас вообще не должен интересовать.
    Для пет-сервера, которому не нужно ни выдерживать наплыв пользователей, ни крутить тяжелые задачи - самый дешевый VPS за 55 руб./мес., скорее всего, будет более чем достаточен.
    НО! Никаких мышек по рабочему столу. Линукс, командная строка, вся свобода администрирования...
    Ответ написан
    2 комментария
  • Выполнение/вызов функции из Go файла при нажатии на кнопку html?

    EvgenyMamonov
    @EvgenyMamonov Куратор тега Go
    Senior software developer, system architect
    Алгоритм у вас будет примерно таким...
    При нажатии на кнопку у вас будет вызвана функция (обработчик события onClick у кнопки).
    В этой функции вы сделаете AJAX запрос по протоколу HTTP на ваш сервер, где запущено ваше ПО на Go.
    В main.go вы запускаете HTTP сервер, который примет запрос от вашей функции JavaScript, обработает его и ответит.

    Разберём самый простой вариант с методом GET, чтобы вам было проще тестировать.

    На сервере (своём компьютере) запускаете main.go примерно такого содержания
    package main
    
    import (
        "fmt"
        "net/http"
    )
    
    func helloHandler(w http.ResponseWriter, req *http.Request) {
        fmt.Fprintf(w, "hello\n")
    }
    
    func main() {
        http.HandleFunc("/hello", helloHandler)
    
        http.ListenAndServe(":8081", nil)
    }

    Этот сервис будет слушать порт 8081 любого IP адреса на сервере, где будет запущен.
    Предположим, что вы тестируете на своём компьютере, в этом случае для проверки вам нужно в браузере откройте url `127.0.0.1:8081/hello`
    После этого вы должны увидеть в ответе просто текст: "hello".
    Когда этот этап будет завершен - вы сможете перейти к вызову этого URL уже из JavaScript.
    Для этого можете использовать то, что вам привычнее, если такого нет - можете воспользоваться этим примером
    const req = new XMLHttpRequest();
      const url='http://127.0.0.1:8081/hello';
      req.open("GET", url);
      req.send();
      req.onreadystatechange=(e)=>{
        console.log(req.responseText)
      }

    PS: Если не понятно или что-то не получится - пишите, помогу разобраться.
    Ответ написан
    21 комментарий
  • Ответьте пж где учить CSS (учусь сам дома, не советуйте кого то на подобие Хауди хо)?

    Я вообще не понимаю этих приколов где учить css/верстку. На ютубе единицы каналов, ты просто смотришь видосы и тебе по аннотации кидает других атворов и через неделю обучения ты уже подписан на всех.
    1.Фрилансер по жизни - канал посвящен исключительно верстки, очень много углубленных тем.
    2.Анна блок - канал тоже исключительно про верстку, вот с неё советовал бы начинать, у неё более легкие и короткие объяснения
    3.Если вообще только прям начал, то webdev, там есть видео css с нуля и html с нуля, которые около трех часов оба, затем на канале есть два часовых ролика про флексбоксы и гриды(мастхев для верстки)
    4.MaxGraph - канал тоже про верстку, но тут уже больше тем для среднего уровня, про гсап-анимации-сборщики
    5.От 0 до 1 - канал тоже про верстку, тут есть много видосов больших, по котором верстаются целые сайты, можешь посмотреть как человек на коммерческой основе делает с нуля какие-то вещи до релиза
    6.Codmark/easy tutorial - два канал где можно подсмотреть какие-то интересные решения по началу
    7.Вадим макеев, это не про обучение верстки(ну тут уроков нет), но это гуро верстки и просто будет интересно послушать как профессионал своего дела мыслит и транслирует информацию, что и как должен делать верстальщик
    ну вот этим лично я пользовался-пользуюсь, возможно найдешь для себя из моего списка что-то полезное
    Ответ написан
    Комментировать
  • Ответьте пж где учить CSS (учусь сам дома, не советуйте кого то на подобие Хауди хо)?

    MrDecoy
    @MrDecoy Куратор тега CSS
    Верставший фронтендер
    https://developer.mozilla.org/ru/docs/Learn/CSS
    https://web.dev/learn/css/
    htmlbook.ru/samcss
    Леа Веру - секреты css
    Дэвид Макфарланд - Новая большая книга css

    https://htmlacademy.ru/courses
    Ну и конечно же самостоятельная практика.
    Ответ написан
    1 комментарий
  • Должен ли программист при получении заказа выполнять и роль девопса?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Должен кому? Долг перед заказчиком определяется пунктами договора. Если вы не соглашались делать работу devops'а, то и не должны её делать. Но лично я считаю, что должен самому себе уметь делать решения под ключ. Правда, я за это всегда накручивал ценик равный оплате разработчика бэкенда, фронтенда, админа, аналитика и менеджера проекта.
    Ответ написан
    3 комментария
  • Оркестрация приложений на маленьком домашнем сервере. Что можете посоветовать?

    У меня в похожей ситуации сложился такой набор инструментов:
    - контейнеризация - докер
    - конфигурация и запуск контейнеров - docker compose
    - web IU к докеру - Portainer
    - деплой - Gitlab CI
    Ответ написан
    Комментировать
  • Что может случиться после перехода по вредоносной ссылке?

    @rPman
    * деанонимизация, как минимум сайт узнает ваш ip адрес (а из него примерные географические координаты), очень часто об этом забывают пользователи telegram и других анонимных чатов
    * спам через уведомления, сайты запрашивают разрешение на прием уведомлений (иногда циклически, пока не нажмешь да) и через некоторое время у вас будут всплывающие окна с картинками (реклама)
    * атака уязвимых веб сервисов где вы авторизованы - click jacking (вслепую заставлять нажимать кнопки на авторизованном сайте, рисуя его со 100% прозрачностью в iframe, пододвигая под курсор пользователя), cross site scripting (выполнять действия на сайтах вызывая напрямую там запросы)
    * есть опасность доступа к буферу обмена, дело в том что по стандарту, браузер не имеет прямого доступа к буферу, пока пользователь не совершит действие на сайте (клик мышкой), заставить пользователя это сделать не сложно, а содержимое буфера будет у злонамеренного сайта, а что там у вас в буфере бывает - иногда очень интересно
    * фишинг - подсовывать визуальную копию других сервисов, требовать авторизацию и таким образом выуживать логин пароль
    * многие люди разрешают (поведение браузеров по умолчанию) автоматическую загрузку файлов в каталог загрузки, злонамеренный сайт может подсунуть туда легитимное приложение, зараженное трояном, в надежде что пользователь когда-нибудь запустит его, увидев в папке загрузки (там всегда бардак и никто не запоминает откуда что скачали), на самом деле это одно из самых опасных действий, так как переводит операции из браузерной песочницы в операционную систему, а там уязвимости опаснее
    ...
    Ответ написан
    1 комментарий
  • Как следить за статусом контейнеров?

    @mureevms
    Написать скрипт, который чекает в цикле время работы каждого контейнера и если он меньше 5 минут, слать письмо/веб хук/что -то еще, скрипт поместить в крон на выполнение каждые 4 минуты
    Ответ написан
    Комментировать
  • Как пустить трафик пользователя через резервный канал на miktotik?

    @Drno
    настраиваем отдельный порт под 2 провайдетра, настраиваем NAT
    далее в фаервол>>манг - делаем маркировку для нужного локального IP
    далее в ip>routes ставим роут 0.0.0.0 через нужный шлюз, с дистанцией больше основного инета. и там ставим маркикровку, которую указали в предыдущем действии

    В итоге икротик промаркирует траффик от указаного локального IP, и направит его в указаный шлюз
    Ответ написан
    Комментировать
  • Стоит ли использовать Preact вместо React? И есть ли критические отличия?

    RomReed
    @RomReed
    JavaScript, Flutter, ReactNative, Redux, Firebase
    https://medium.com/@rajaraodv/using-preact-instead...
    ответы на многие вопросы
    Ответ написан
    Комментировать
  • Должен ли я модерировать нецензурные имена в приложении?

    Да, приложения с пользовательским контентом, который не модерируется, как правило, имеют рейтинг 18+.

    Мат в некоторых странах, а в частности в РФ - это административка (к счастью только автору, а не площадке, емнип)
    Ответ написан
    5 комментариев