Задать вопрос
  • Реально ли за месяц заработать на utest 100 долларов?

    samodum
    @samodum
    Какой вопрос - такой и ответ
    Не реально
    Ответ написан
    Комментировать
  • Какую БД выбрать для алготрейдинга?

    На счет сотен гигобайт не скажу, но с базой около 30Г у MySQL никаких проблем нету. Да и на сотнях гигобайт быть не должно.

    Насколько быстро будет работать на больших объемах данных в таблице зависит от индексирования полей. Здесь универсального рецепта нету, надо находить золотую середину и ориентироваться на то, что важнее для конкретной таблицы быстрая вставка или быстрое чтение. Если в таблицу большую часть времени данные только пишутся, а запросы по ней выполняются редко, то индексы надо свести к минимуму. Если индексов в таблице кроме первичного ключа нету то на скорость вставки ее размер влиять не будет.

    Рекомендую глянуть пару советов по оптимизации работы с MySQL
    https://habr.com/ru/post/20246/
    Ответ написан
    Комментировать
  • Как проверить факт просмотра пользователем рекламы через php?

    @SEOVirus
    Так шифруйте запрос и отправляйте шифрованным на сервер, проверяя целостность данных на неизменность. Включайте в запрос время просмотра, чтобы злоумышленник не отправлял один и тот же запрос. Анализируйте IP запроса, чтобы не повторялся. Если добавите дополнительные данные (о поведении пользователя, когда открыл рекламу, сколько времени потратил, как вёл себя в прилоежнии) подделать такой запрос будет сложно и вы поймёте живой это человек или бот.
    Чем сложнее сделаете - тем сложнее будет взломать.
    Ответ написан
    2 комментария
  • Как следить за памятью самостоятельно?

    Robur
    @Robur
    Знаю больше чем это необходимо
    в JS - никак. Вы можете разве что делать разные оптимизации поверх сборщика мусора - пул объектов, переиспользовать массивы, не создавать функции на каждый чих и так далее. Но большой вопрос - зачем это вам.
    Если у вас не реалтаймовое приложение с большим количеством данных - убедитесь что нет утечек памяти и успокойтесь :)

    Если просто душа просит другого - то вам нажен другой язык. И соответственно это будет не веб (разве что через WASI но это не точно)

    Но, что если программист сам хочет принимать решения, и следить за памятью

    Такого программиста надо отправить в хардкорную embedded разработку и он будет там счастлив, считая байты и подчищая регистры. А если будет оттуда выбираться и пытаться следить за памятью самостоятельно там где есть проверенные встроенные механизмы (GC, ARC и прочее) надо отбирать клавиатуру.
    Ответ написан
    2 комментария
  • Как отправить PUT запрос через NODE.JS?

    bootd
    @bootd
    Гугли и ты откроешь врата знаний!
    В доку то зайдите
    axios.put
    Ответ написан
    Комментировать
  • Установщик wordpress не видит mysql?

    @KingstonKMS
    Либо мускул тоже в докер сувать, и связывать по внутренним ип, либо докеру вп дать доступ к локалхосту машины ( --network host) , чтобы он видел мускул.
    Ответ написан
    Комментировать
  • Как определяют номер телефона у посетителей сайта?

    @granty
    Куки исключены, браузер не сохраняет их и не хранит историю.

    1. Про evercookie слышали? А про Web Fingerprint?
    На хакере перечислена масса способов хранить ID на вашем компе без использования Куков и кэша, а технология Web Fingerprint позволяет хранить цифровой отпечаток компа, браузера на сервере банка: Фингерпринтинг конкретного ПК с точностью 99,24%, не спасает даже смена браузера.

    Если вы - клиент банка и заходили в его интернет-банкинг, он легко может вас опознать при использовании того же браузера и того же компа.
    А если у вас на мобиле установлено приложение интернет-банкинга - вы вообще под колпаком :)

    2. Если вы лазите по инету залогиненым в Вконтакте/Яндексе, то через backdoors в их API можно определить ваш профиль и все ваши данные.
    Сайт Соцфишинг работает на этом принципе.
    Сам банк тоже может использовать соцфишинг и ставить невидимый ифрейм на своё меню, и при клике вы автоматически авторизуетесь через аккаунт, например, Вконтакте. Зная ваш ID на Вконтакте, ваш телефон легко узнаётся, их базы регулярно сливаются и продаются

    PS: Узнать как конкретно вас "слил" и каким образом - невозможно без исследования конкретной ситуации.

    факультатив

    Всё вышеперечисленное - детский лепет по сравнению с тем, какие возможности имеет Google (и, частично, Яндекс с Apple).
    У всех дома стоит точка WiFi, к которой коннектится ваш комп и мобильник с Андроид. Через мобильник Гугл знает все номера телефонов, которые подключаются к этой точке доступа (и все аккаунты соцсетей в которые вы логинились с мобильника). Поэтому когда вы лезете Хромом с компа через эту же точку доступа - Гугль уже знает, что это вы (или один из ваших домочадцев). По GPS на мобильнике он знает даже адрес вашего проживания с точностью до подъезда.
    Так что мы все давно уже добровольно "чипованы", чего удивляться что о нас всё известно.
    Ответ написан
    Комментировать
  • Как удаленно обновлять программу на php?

    DevMan
    @DevMan
    а при чем тут пхп?
    удаленный доступ есть - фтп или автоматизация.
    удаленного доступа нет - кататься с флешкой по городу или обучить людей на местах.
    Ответ написан
    Комментировать
  • Какой учебник подойдет полному новичку чтобы изучить PHP?

    saboteur_kiev
    @saboteur_kiev Куратор тега IT-образование
    software engineer
    Нет учебника, чтобы изучить PHP.
    Нельзя выбрать один учебник и научиться.
    Есть множество разных книг, которые можно читать чтобы начать учить. Любые учебники для начинающих берите, читайте. После 3-4, если девушка будет достаточно настойчива, сама будет разбираться что читать дальше.
    Ответ написан
    Комментировать
  • Почему в php функция не имеет доступ ко внешним переменным?

    usdglander
    @usdglander Куратор тега PHP
    Yipee-ki-yay
    Согласно пророчеству.
    Если хотите, чтобы функция php видела внешнюю переменную, то её надо импортировать в функцию с помощью
    global $a;
    Ответ написан
    9 комментариев
  • Как защитить форму от спама?

    @Evanescing
    1. Подключить капчу посложнее.
    2. Валидировать все поля формы: обязательность, тип данных, длина строки поля, кириллица ли (обычно спам латиницей валится), проверка на ссылки и стоп слова.
    3. Фиксирование айпи адресов сообщений или сессий - ограничивать интервал между сообщениями и их количество с одного девайса, адреса или сессии.
    Ответ написан
  • Каким образом лучше реализовать интерфейс по визуализации цепей вопросов-ответов чат-бота?

    Robur
    @Robur
    Знаю больше чем это необходимо
    в самом простом варианте - берете свг, рисуете там кружочек, стрелочки, добавляете кнопку "добавить-удалить" для кружочка и стрелочки и все.
    Делов, если это для вас в новинку, на вечер. Самый сложный момент будет нарисовать стрелочку, но тут можно упростить - рисуйте не как на картинке (как попало) а по линии из центра в центр. точку где линия пересекается с каждым из кружочков в таком варианте найти легко.
    В сложном варианте - зависит от варианта. наворачивать можно до бесконечности
    Ответ написан
    Комментировать
  • Как сделать работу Docker не под root?

    deepblack
    @deepblack
    Например так:
    FROM ubuntu:xenial
    RUN useradd -d /home/ubuntu -ms /bin/bash -g root -G sudo -p ubuntu ubuntu
    RUN mkdir /opt/myvolume  && chown ubuntu /opt/myvolume
    WORKDIR /home/ubuntu
    VOLUME /opt/myvolume


    Ещё можно посмотреть тут:
    Ответ написан
    Комментировать
  • Как изучать laravel?

    glaphire
    @glaphire
    PHP developer
    На laracasts в треке "laravel" есть ряд курсов "создаем приложение", даже если они немного устарели, то кардинально подходы не меняются.
    Ответ написан
    Комментировать
  • Как отложить выполнения команды в laravel?

    REZ1DENT3
    @REZ1DENT3
    web-developer
    Очереди: https://laravel.com/docs/7.x/queues

    Добавляешь событие и обрабатываешь в очереди. Отправка смс, email и другие задачи
    Ответ написан
  • Требование "Хорошое/отличное знание JS" к джну, что хочет услышать работодатель?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    Порадуйте синьористых чудаков знанием костылей яп. Не зря же они искали эти задачки по интернетам. Или лучше не идите туда. Все собеседования они в принципе о том что человек не отмороженный дебил, техники проверяют что что то знает, директор на основе мнения hr и техников собеседует кандидата и даёт добро.
    Ответ написан
    Комментировать
  • Какой фреймворк выбрать для микросервисов Slim или Swoft?

    erniesto77
    @erniesto77
    oop, python, php, js
    как обычно, ответ на такие вопросы - то что вы и ваша команда лучше знает, то и использовать

    а так желательно symfony, в symfony есть skeleton микросервиса. Лучше его, так как там соблюдаются и поддерживаются мировые стандарты кода
    Ответ написан
    Комментировать
  • Какой фреймворк выбрать для микросервисов Slim или Swoft?

    Sanes
    @Sanes
    Symfony тоже микрофреймворк.
    Ответ написан
    Комментировать
  • Как валидно настроить права для nginx и php-fpm?

    Sanes
    @Sanes
    Nginx тут не при чем. Это настраивается в пуле PHP-FPM.
    PHP-FPM

    [{{ username }}]
    user = {{ username }}
    group = {{ username }}
    listen = /var/run/php/php{{ php }}-fpm-{{ username }}.sock
    listen.owner = www-data
    listen.group = www-data
    pm = dynamic
    pm.max_children = 5
    pm.start_servers = 2
    pm.min_spare_servers = 1
    pm.max_spare_servers = 3
    chdir = /
    ;php_admin_value[sendmail_path] = /usr/sbin/sendmail -t -i -f www@my.domain.com
    ;php_flag[display_errors] = off
    php_admin_value[error_log] = /var/www/{{ username }}/logs/fpm-php.{{ username }}.log
    ;php_admin_flag[log_errors] = on
    ;php_admin_value[memory_limit] = 32M
    php_admin_value[upload_max_filesize] = 100M
    php_admin_value[post_max_size] = 100M
    php_admin_value[open_basedir] = /var/www/{{ username }}/
    php_admin_value[disable_functions] = exec,passthru,shell_exec,system,proc_open,popen,curl_multi_exec,parse_ini_file,show_source,stream_set_write_buffer,stream_socket_sendto,highlight_file,com_load_typelib
    php_admin_value[upload_tmp_dir] = /var/www/{{ username }}/tmp
    php_admin_value[soap.wsdl_cache_dir] = /var/www/{{ username }}/tmp

    Nginx

    server {
    	listen 80;
    	#listen [::]:80 default_server ipv6only=on;
    
    	root /var/www/{{ username }}/www;
    	index index.php index.html index.htm;
    
    	server_name {{ domain }};
    
    	location / {
    		try_files $uri $uri/ =404;
            if (!-e $request_filename) {
            rewrite ^/(.*)$ /index.php?q=$1 last;
    	    }
    	}
    
    	location ~ \.php$ {
    		include snippets/fastcgi-php.conf;
    		fastcgi_split_path_info ^(.+\.php)(/.+)$;
    		fastcgi_pass unix:/run/php/php{{ php }}-fpm-{{ username }}.sock;
    		include fastcgi_params;
    	}
    	client_max_body_size 100M;
    }

    Ответ написан