• Как запустить php-fpm на 9001 порту под доккера?

    @fluffybear
    Покажите команду, которой запускаете. Подозреваю, что вам поможет параметр --port 9001:9000
    Означает что порт 9001 с хост-машины будет проброшен в порт 9000 в контейнере.
    Ответ написан
    2 комментария
  • Как отправить изображение чтобы оно открылось в браузере, а не скачивалось?

    @ghostiam
    На Go писатель, серверов пинатель.
    content-type: image/png (jpeg or gif)

    (Ответ в комментариях)
    Ответ написан
    5 комментариев
  • CURL не получается отправить POST, дело в js, как определить?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    откройте инспектор хрома, вкладка нетворк, переключите фильтр пакетов на XHR, поменяйте дату на нужную - смотрите что отправляет сайт в запросе к серверу(там много всего на самом деле), ищите где формируется аякс запрос и что формирует эти данные для отправки, эмулируйте курлом данный запрос - profit!
    Ответ написан
    Комментировать
  • Легаси-монстр. Как побеждаете?

    @RidgeA
    Немного банальностей:
    1. Бизнес не даст ресурсов на переписывание проекта с 0: время и большие риски
    2. Бизнесу как правило все-равно какое говно там крутится, лишь бы деньги приносило.
    3. Если более-менее адекватное руководство - нужно донести идею постепенного рефакторинга кода по мере необходимости в процессе фикса багов и разработки новых фич и тем самым аргументировать что на разработку новых фич/фикс багов нужно больше времени.

    Как я бы делал:
    1. Тесты на существующие функции (если возможно, видел методы в контроллерах с мешаниной вызовов методов моделей, созданием DTO и сохранением их через репозиторий, прямых http-запросов и запросов в бд на 1000+ строк, покрыть такое тестами - невозможно)
    2. Составить план рефакторинга, где отметить что и где надо сделать, коротко, в основном для команды разработчиков.
    3. Постепенно рефакторить старый код по мере взаимодействия с ним.
    4. Новый код - писать сразу правильно, для взаимодействия со старым кодом где нет возможности/времени его переделать - делать какие-то адаптеры, что бы не распространять токсичный код.
    5. Как оперативная мера защиты от SQL иньекций можно поставить что-то вроде этого https://github.com/nbs-system/naxsi
    6. Мониторинг кода, который не используется - pinba.org , по мере обнаружения такого кода - удалять безвозвратно (в крайнем случае есть VCS, я надеюсь). Начать с более высокоуровнего кода - контроллеры, напримерю. Плюс IDE в этом могут помочь и grep.
    7. Как вариант - новые фичи можно пилить в отдельном проекте (v2), крутить оба и постепенно переходить на новый, со временем старый (v1) выкинуть (и начать делать новый - v3 :-) )
    Ответ написан
    3 комментария
  • Легаси-монстр. Как побеждаете?

    У нас ситуация такая:

    1) Есть старый сервис, написанный еще на костылях с кучей всякого шлака. Он обрабатывает основную часть логики, его допиливают, дополняют и прочее.
    2) Есть апи сервис на современном стеке, который постепенно забирает функционал от старого монстра.
    3) Все новые задачи в приоритете ставятся на новый стек..

    Так постепенно старое уходит, новое приходит. Но опять же, пока мы делаем апи на современном стеке, этот стек устаревает, и через какое-то время придется переписывать уже его.

    Так можно поступать, если это it-компания.

    Если это просто какая-то компания, которая не хочет инвестировать в софт, то альтруизмом лучше не заниматься, дополняйте старый стек и все. А потом все решит рынок, когда переписать проект будет проще, чем нанять спецов на его поддержку.
    Ответ написан
    Комментировать
  • Как внедрять новых программистов в проект?

    ApeCoder
    @ApeCoder
    Программисты не имеет доступа к данным пользователя. Администраторы имеют ограниченный доступ. Разработка ведётся на тестовых обезличенных данных. Если случается проблема требующая доступа к продакшн работа производится совместно программистом и администратором под контролем последнего.

    Если правом в том как вводить людей в курс дела, то новому программисту даются сначала более лёгкие задачи типа исправления простых ошибок потом более сложные пока он не понимает принятый способ работы и на. Code review не убеждаются что он все перенял.
    Ответ написан
    Комментировать
  • Как не пускать на сайт при включенном adblock/ublock и прочее?

    @4tlen
    Посмотреть какие классы блочат блокировщики и присвоить контентным блокам такие же. Потрутся вместе с рекламой.
    Ответ написан
    Комментировать
  • Как выводить заглушку на сайте при отсутствии интернет соединения?

    @MoksS
    Прочитайте пожалуйста, это вам как вариант https://developer.mozilla.org/ru/docs/Web/API/Navi...5bf482010d2a0303590990.png
    Ответ написан
    Комментировать
  • Сервер под большую нагрузку, безотказная работа?

    Sanes
    @Sanes
    Обратиться к компетентым специалистам. Как еще...
    Ответ написан
    Комментировать
  • Как автоматизировать скрипт на PHP?

    Stalker_RED
    @Stalker_RED
    Ответ написан
    Комментировать
  • Как правильно собрать jar, чтобы запустить как сервис в Linux?

    Softer
    @Softer
    Обычный жарник.
    Писать им PID-файл.
    Запусать с & в конце.
    Мониторить monitом или писать init-скрипты/systemd-юниты на мониторинг процесса с этим PID
    Ответ написан
    5 комментариев
  • Сервер и его настройка под API?

    Sanes
    @Sanes
    Потенциально длительные операции надо делать через очереди. Что произойдет при обрыве соединения с клиентом проверяли?
    Ответ от API должен быть мгновенным и не ставить клиент в ступор.
    Ответ написан
    Комментировать
  • Как через Python + MySQL сделать обратный отсчёт времени?

    longclaps
    @longclaps
    Гугли алгоритм Каунта-Дауна (англ Countdown algorithm).
    Ответ написан
    1 комментарий
  • Как правильно создать и хранить классы собственных исключения?

    dmitriylanets
    @dmitriylanets
    веб-разработчик
    Comment/Exceptions/CommentException.php
    Comment/Commands/AddComment.php
    Post/Exceptions/AddPostException.php
    Post/Commands/AddPost.php
    -в случае если вы делите по доменам функционал
    в любом случае это отдельный каталог Exceptions и отдельный класс
    Ответ написан
    Комментировать
  • Как посмотреть все свои комментарии на Тостере?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    В гугле поиск по фразе, содержащейся в комментарии:
    site:toster.ru "фраза" "@dollar"
    Ответ написан
    Комментировать
  • Как защитить идею?

    @dmshar
    Особо позабавило вот это:
    Как защитить идею.... от того что в будущем (когда я буду заниматься её разработкой) она не пришла в голову кому-то другому. Бывает мысли у людей сходятся.

    Если у вас такое понимание прогресса, то возникают серьезные сомнения в пользе идеи, которая вам пришла в голову.
    Вы никогда не думали, что практически все действительно стоящие идеи - и даже великие идеи - одновременно приходили в голову нескольким людям?
    Дифференциальное и интегральное исчисления - Ньютону и Лейбницу.
    Теория Дарвина - ему и Альфреду Расселу Уоллесу.
    Логарифмы открыли независимо Непер и Бюрги.
    Закон Бойля — Мариотта - потому так и назван, что двое сделали это открытие почти одновременно и независимо друг от друга.
    Пятна на солнца вообще одновременно, в 1611 году открыли четыре (!!!) разных ученых.
    А Шарль Кро - изобретал патефон на пару месяцев раньше Эдисона, и цветную фотографию - с разницей в пол года с Дюко дю Ороном. (Во не повезло парню).
    В сегодняшнем мире - персональные компьютеры - посмотрите, кто когда и как начал их выпускать.
    Поисковые системы и социальные сети - вспомните их историю.
    Так что можете не обольщаться - если ваша идея не пришла в голову кому-нибудь другому, то будьте уверены - она не нужна никому.
    Но скажу один страшный секрет. Если даже к вам вот сейчас в голову пришла супер-пупер гениальная идея, которая принесет вам миллионы и всемирную известность, и вы сейчас вот размышляете, как добиться собственной монополии на нее - будьте уверены, что где-то в Америке, Японии, Китае или а Попуа-Новой Гвинее вот прямо сейчас кто-то другой уже начал ее реализовывать. И пока вы находитесь в размышлениях - он станет изобретателем и все лавры и миллионы достанутся ему.
    У первого - есть фора, но в сегодняшнем мире у него нет монополии.
    И помните - Стив Джобс, Цукерберг не были ни богатым, ни первыми. Но они шли к цели, а не думали, как себя от кого-то защищать.
    Поэтому совет - не майтесь дурью, а займитесь реализацией своей идеи. Нет денег - ищите инвестора. Да-да, делитесь с ним. Он даст вам то, что у вас нет, и за это вы с ним поделитесь и славой и деньгами. И нет в этом ничего зазорного или унизительного. Используйте свою фору, если она у вас есть, конечно.
    Ответ написан
    3 комментария
  • Можно ли с помощью php отправить на номер телефона код с потверждением?

    @jimquery
    Можно отправить, если на сервере есть модем с SIM-картой или через сторонний SMS-шлюз.
    Ответ написан
    Комментировать
  • Как объединить большое количество условий?

    0xD34F
    @0xD34F Куратор тега JavaScript
    Сделайте объект: то, с чем сравниваете, будет именами свойств; то, что выводите, будет их значениями; то, что проверяете - ключ, по которому будет извлекаться значение. Если ничего не получили, подставляете дефолтное значение. Типа вот так:

    alert(({
      1: 'b',
      2: 'c',
    })[a] || 'd')
    Ответ написан
    Комментировать