Задать вопрос
  • Как настроить nginx под статический сервер с автоматическим подбором страниц по существованию таких файлов?

    Maksclub
    @Maksclub
    maksfedorov.ru
    index index.html;
    root /app;
    
    location / {
            try_files $uri $uri/ /index.html =404;
    }


    Если файл есть в /app — отдаст, если нет — index.html
    Ответ написан
    2 комментария
  • Как указывать имя пингуемого устройства чтобы к нему не дописывался домен отправителя?

    @d-stream
    Готовые решения - не подаю, но...
    Для nslookup и подобных - точку в конце имени
    nslookup pc1.
    Ответ написан
    Комментировать
  • Как с помощью смартфона проверить ширину лазерного реза?

    GavriKos
    @GavriKos
    С такой точностью не каждая линейка справится. Смартфон с его погрешностями и переменной средой с тонной преобразований и подавно.

    Самый правдоподобный вариант - взять смартфон, на пресе его сплющить до 0.5 мм с нужной точностью, и пихать в рез как щуп.
    Ответ написан
    2 комментария
  • Как настроить права на файл при выполнений php скрипта в ubuntu?

    saboteur_kiev
    @saboteur_kiev Куратор тега Ubuntu
    software engineer
    права, которые у тебя на cookie.txt не могут быть заданы при создании обычного файла, ибо umask не может для файла проставить executable и sticky bit

    То есть их уже кто-то потом поменял на такие.
    Либо для cookie создавался временный файл командой mktemp или ее аналогом.

    Выход -
    1. Добавить в php скрипт смену прав для файла после его создания - chmod("cookie.txt",0644);
    2. Просмотреть скрипт, понять в каком месте создается файл и выяснить почему кривые права. Может вместо создания временного файла там можно просто указать создание явного файла с указанным именем.
    Ответ написан
    5 комментариев
  • Зачем образу докера операционная система?

    SignFinder
    @SignFinder
    Wintel\Unix Engineer\DevOps
    Потому что иногда удобнее иметь в контейнере минимальную ОС с окружением, а не конкретное приложение.
    Вы бы начали с изучения, что ответы на банальные вопросы можно гуглить - советую, пригодится.
    Ответ написан
    Комментировать
  • Можно ли как-то отредактировать файл /etc/resolv.conf на shared хостинге?

    karabanov
    @karabanov Куратор тега Ubuntu
    Системный администратор
    На shared хостинге нет, на полноценном VPS да.

    У curl есть флаг --resolve
    curl --resolve go1.unisender.ru:443:217.77.111.4 https://go1.unisender.ru

    Для PHP, например CURLOPT_RESOLVE
    Ответ написан
    Комментировать
  • Почему при клике на кнопку value не правильно считает значения?

    smilingcheater
    @smilingcheater
    Вы внутри метода calculater вешаете обработчики на кнопки. Сколько раз был вызван calculater - сколько обработчиков у вас и висит. Поставьте внутри этого обработчика console.log() и посмотрите, сколько раз он выведется.
    Назначайте обработчики только 1 раз
    Ответ написан
    Комментировать
  • Как парсить приложение на андройд?

    hottabxp
    @hottabxp
    Сначала мы жили бедно, а потом нас обокрали..
    1 комментарий
  • Как изменить имя файла в bash после выполнения условия?

    saboteur_kiev
    @saboteur_kiev Куратор тега bash
    software engineer
    #!/bin/bash
    for i in {1..255}
    do
      PUB=$(wg genkey)
      PRIV=$(wg pubkey <<<"${PUB}")
      echo -e "$i\n${PUB}\n${PRIV}\n" >> wgkeys.txt
      echo $i
    done
    Ответ написан
    2 комментария
  • Ошибка на созданный файл в чем причина?

    @SergeyAVolkov
    * - не включает файлы начинающиеся с точки (скрытые файлы).
    Если имя всегда с точкой тогда можно использовать шаблон ".*.pem"
    Если может быть произвольным тогда лучше использовать find, например
    find /var/lib/dkim/ -name '*.pem' -exec chmod 600 {} \;
    Ответ написан
    1 комментарий
  • Как найти причину высокой нагрузки WordPress сайта на хостинг?

    ThunderCat
    @ThunderCat
    {PHP, MySql, HTML, JS, CSS} developer
    Простой ответ: что вы хотите - это вордпересс, цмс с изначально не оптимальной структурой, так как не возможно сделать и быстро и универсально, чем-то приходится жертвовать.

    Сложный ответ: Для того чтобы выявить проблему используют логирование и профилирование. В лог пишутся все запросы к бд или места где предполагается длительное выполнение кода (например запросы к апи или другим сайтам). Затем анализ, потом нахождение решения и фикс.
    Профилирование же состоит из комплекса действий по нахождению узких мест. В частности код условно делится на блоки, затем выполнение каждого блока замеряется и выясняется какой блок создает задержки. Далее соответственно данный блок дробим до тех пор пока не находим конкретное место проблемы. 80% вероятности что это будет какой-то запрос, с выборкой из нескольких таблиц и структурами по типу EAV, 18% что запрос к какому-то апи/сайту и 2% что тормозит именно криво написанный код (хотя это вордпресс, тут вероятности примерно равные). Что делать зависит от того что за проблема в конкретном случае. Иногда надо что-то закешировть, иногда править запрос, добавлять индексы, возможно что-то менять в структуре. Тут уже от ситуации...
    Ответ написан
    5 комментариев
  • Как с помощью JS изменить значение SELECT списка на значение с атрибутом selected?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    <select id='personlist'>
          <option value="1" selected="selected">1</option>
          <option value="2">2</option>
          <option value="3">3</option>
        </select>
        <script>
        document.getElementById('personlist').value='2';
        </script>
    Ответ написан
    Комментировать
  • Сайт с доступом только по https. Плюсы и минусы?

    BasiC2k
    @BasiC2k
    .NET developer (open to job offers)
    Гипотетически закрытие 80 порта может повлиять на:
    1. Работу некоторых парсеров и роботов по индексации;
    2. Работы сервисов, определяющих доступность сайта;
    3. Работу IoT устройств которые не могут по https
    Ответ написан
    Комментировать
  • Можно ли разорвать в USB линию VCC, чтобы передача данных со смартфона продолжала работать?

    @pfg21
    ex-турист
    вытащи аккумы. телефон вполне себе работает чисто на "зарядке" без аакума.
    Ответ написан
    5 комментариев
  • Как проверить открытие письма?

    shurshur
    @shurshur
    Сисадмин, просто сисадмин...
    Из соображений безопасности открытие ресурсов по внешним ссылкам многие почтовые клиенты и почтовые сервисы не делают вообще. Тем более когда речь явно идёт о картинке размера 1x1, которую могут игнорировать намеренно (лучше уж тогда не указывать размеры, пусть клиент скачает картинку эту 1x1 и узнает размер только после этого).

    Надо понимать, что E-mail - это канал с негарантированной доставкой до получателя без шансов проверить факт доставки/прочтения. Письмо может вообще не дойти до получателя, может дойти до "Спама", может дойти но сразу пойти в под нож - но мы об этом не узнаем. Все эти пиксельные картинки, оборачивания ссылок в персонально трекируемые, "запрос подтверждения" - всё эти попытки хоть как-то обойти эти ограничения всё равно ни к чему получателя не обязывают. Получатель может всё это полностью проигнорировать.

    Или, как вариант, картинку почтовый сервис получателя может скачать заранее и положить в кэш, что также ничего не означает о получении письма. Её также может скачать антивирус почтового сервиса или получателя, чтобы проверить.

    Я всегда принципиально отказываюсь от всех подтверждающих получение действий и фокусов, потому что если отправитель ПОЛЕНИЛСЯ приаттачить все картинки к письму - то значит я посмотрю на его письмо без картинок и по ссылкам переходить не буду вообще. Не заслужил. Ничего ценного в таких письмах я ещё ни разу не видел.

    Единственное, для чего все эти средства помогают - примерно оценивать степень прочтения в сравнении с предыдущим опытом. Скажем, вчера письмо прочитало 30% получателей, это может означать что его прочитало, например,на самом деле 60%, но лишь половина подвержена трекингу. А если сегодня прочитало 10%, значит, что-то случилось: письмо хуже дошло до получателей, письмо хуже привлекло их внимание... (Все цифры, конечно, от балды, они имеют иллюстративный характер)

    Да и вообще, в наше время почту читает всё меньше людей.
    Ответ написан
    Комментировать
  • Какое оборудование нужно для соединения коммутаторов в разных зданиях на расстоянии 200 м?

    anthtml
    @anthtml
    Системный администратор программист радиолюбитель
    Вариант 1 (самый простой/дешманский): Делим участок на сегменты менее 100м, желательно чтобы стыки были в районе розеток. Покупаем самый дешевый обычный свитч DES/DGS-1005, подключаем и работаем
    Вариант 2 (по дороже): Вариант 1, только вместо свитчей POE-коммутаторы(инжекторы)/удлинители. Если к местам стыков нет возможности подвести 220В
    Вариант 3 (надежный/геморойный): Оптоволокно, если позволяют условия - можно купить готовый оконеченный патчкорд и протянуть, если нет - тянуть кабель и оконечивать. Любой провайдер подрядиться такое спроектировать/сделать.
    Вариант 4. (в прямой видимости): WI-FI радиомост на направленных точках доступа/антенах. Ну не забиваем, что от каждой точки доступа до ближайшего свитча также может быть до 100м
    Вариант 5. (когда проложить нет возможности): Использование технологий PLC (powerline) - подключение по существующей электропроводке, через спец адаптеры. VDSL - подключение по существующей прямой телефонной линии (1 паре)
    Вариант 6. (арендный) При наличии на обоих концах точек присутствия провайдера. Заказать услугу темного волокна или mpls, объединение сетей
    Вариант 7. (интернетный): При наличии на обоих концах точек присутствия провайдера. Объединение сетей через классический VPN.
    Ответ написан
    2 комментария
  • Как добавить отметку времени в выводе команды ping?

    wisgest
    @wisgest
    Не ИТ-специалист
    Вывод команды ping перенаправляется на вход сложной команды.

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

    1. Как работает эта часть кода (pause&pause)>nul

    Пропускаются две первые строки из входного потока принимающего процесса:
    pause ожидает ввод от пользователя и, когда на её вход поступает строка, прекращает ждать, >nul подавляет (перенаправляет на пустое устройство) приглашение от pause нажать любую клавишу (в данном случае подавляется весь вывод составной команды, состоящей из двух pause).

    Вместо этого можно было без >nul использовать, например, две команды set /p, даже и не указывая перед знаком равенства имя переменной, в которую вводится строка.

    Добавлено: Как выяснилось при обсуждении вопроса, дело обстоит сложнее…

    2. Как работает эта часть set /p "data=" && echo(!date! !time! !data!)

    Очередная строка из входного потока вспомогательного процесса cmd, то есть из выходного потока ping, помещается (set /p) в переменную окружения data и в случае успеха (&&), за который считается то, что была введена непустая строка (иначе переменная окружения не изменяется), выполняется следующая команда echo, выводящая строку из разделённых пробелами псевдопеременных date, time и только что установленной переменной data.
    Псевдопеременные date иtime содержат текущие дату и время, но только если не определены одноименные переменные окружения, поэтому для учёта всех возможных случаев их следовало бы в начале явным образом сбросить.

    Имена переменных заключены в восклицательные знаки, а не знаки процента, для отложенного раскрытия изменяющихся переменных в команде повторения (цикле) , а не однократной подстановки их значений до выполнения цикла. Возможность использовать отложенное раскрытие в данном случае включается ключом /v команды cmd. (Возможно также для отложенного раскрытия использовать команду call…)

    Открывающая скобка сразу после echo — это не открывающая скобка составной команды, а разделитель между командой echo и её аргументом, а закрывающая скобка относится к составной команде в цикле for /l %a in () do.

    Зачем нужна команда ping -n 2 8.8.8.8>nul после бесконечного цикла, я не знаю и буду рад увидеть разъяснения этому.
    Добавлено: Но без неё изменяется формат вывода:
    7.10.2022 21:47:58,02 Ответ от 8.8.8.8:
    7.10.2022 21:47:58,04 число байт=32 время=244мс TTL=104
    7.10.2022 21:47:59,04 Ответ от 8.8.8.8:
    7.10.2022 21:47:59,04 число байт=32 время=240мс TTL=104
    7.10.2022 21:48:00,05 Ответ от 8.8.8.8:
    7.10.2022 21:48:00,05 число байт=32 время=233мс TTL=104


    Спасибо за интересный вопрос!
    Ответ написан
  • Почему автоматические не обновляется состояние папки?

    3r1k
    @3r1k
    the quieter you become, the more you hear
    Это связано с блокировкой антивирусом потоков (возможно в прошлом) исполняемого файла explorer.exe
    Исправить возможно получиться проверкой системных файлов:
    Запустить командную строку от имени администратора
    Прописываем команду sfc /scannow и нажимаем Enter
    После этого начнется процесс сканирования системы и замены поврежденных (измененных) элементов
    Ответ написан
    1 комментарий