• Как выкачать весь сайт?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    https://eternallybored.org/misc/wget/

    Чтобы скачать сайт целиком с помощью wget нужно выполнить команду:
    wget -r -k -l 7 -p -E -nc http://site.com/

    После выполнения данной команды в директорию site.com будет загружена локальная копия сайта site.com. Чтобы открыть главную страницу сайта нужно открыть файл index.html.
    Рассмотрим используемые параметры:
    -r — указывает на то, что нужно рекурсивно переходить по ссылкам на сайте, чтобы скачивать страницы.
    -k — используется для того, чтобы wget преобразовал все ссылки в скаченных файлах таким образом, чтобы по ним можно было переходить на локальном компьютере (в автономном режиме).
    -p — указывает на то, что нужно загрузить все файлы, которые требуются для отображения страниц (изображения, css и т.д.).
    -l — определяет максимальную глубину вложенности страниц, которые wget должен скачать (по умолчанию значение равно 5, в примере мы установили 7). В большинстве случаев сайты имеют страницы с большой степенью вложенности и wget может просто «закопаться», скачивая новые страницы. Чтобы этого не произошло можно использовать параметр -l.
    -E — добавлять к загруженным файлам расширение .html.
    -nc — при использовании данного параметра существующие файлы не будут перезаписаны. Это удобно, когда нужно продолжить загрузку сайта, прерванную в предыдущий раз.
    Ответ написан
    1 комментарий
  • Зачем нужен __invoke и когда его нужно использовать?

    @inFureal
    Метод __invoke() вызывается, когда скрипт пытается выполнить объект как функцию.

    <?php
    class CallableClass
    {
        public function __invoke($x)
        {
            var_dump($x);
        }
    }
    $obj = new CallableClass;
    $obj(5);
    var_dump(is_callable($obj));
    ?>


    Из официальной документации. Когда вместо вызова метода класса, класс вызывается как функция.
    Ответ написан
    3 комментария
  • Почему Linux зависает при больших нагрузка на ОЗУ?

    @Eddy_Em
    12309 - старая потеха.
    Пока SSD не поставишь на корень и своп, от этой проблемы не уйдешь!

    И таки да, советую про oom-killer почитать. Все в линуксе есть. Просто редко oom-killer успевает убить обжор. Чаще система вусмерть встает клином (у меня такое было очень часто) и только RESET помогает.
    Ответ написан
    2 комментария
  • Литература по программированию шейдеров на "чистом" С++?

    @AlexSku
    не буду отвечать из-за модератора
    Как это без библиотек? Либо DirectX, либо OpenGL или Вулкан.
    Если по DirectX, то книга Frank Luna "DirectX 12".
    Но фрагменты для шейдеров, конечно, понадобятся.
    Ответ написан
    Комментировать
  • Несколько SPF записей, как корректно записать?

    McHaber
    @McHaber
    sysadmin
    paulvales,
    1. перед тем как опубликовать объединенную SPF запись в DNS зоне можете проверить ее корректность воспользовавшись следующей ссылкой:
    https://easydmarc.com/tools/spf-record-raw-check-v...

    2. чтобы убедиться что у вас в DNS нет множественных SPF записей (что может привести к ошибке валидации SPF), диагностируйте ваш домен по этой ссылке
    https://easydmarc.com/tools/spf
    Ответ написан
    Комментировать
  • Вредно ли для компьютера оставлять его включенным на ночь?

    NeiroNx
    @NeiroNx
    Программист
    конечно вредно, есть шанс вообще не лечь спать. А железу пофиг.
    Ответ написан
    8 комментариев
  • Зачем нужна stage area в Git?

    Думаю, ответ немного банален — чтобы можно было выбирать, какие файлы включать в коммит.

    Из практики — чаще всего случается git commit -am "...", уже до автоматизма дошло. Т.е. смотрю статус, если есть новые — добавляю, и затем коммит с флагом -a. Но это у меня. Т.к. в моем случае git по большей мере нужен для коммандной работы — сам контроль версий не особо использую. Если нужно балансировать между версиями — используются бранчи.

    Тем не менее, если действительно относиться к каждому коммиту, как к стабильной версии для продакшна, то может понадобиться именно такой подход. В этом случае как раз таки staging area и играет роль черновика, из которого можно включить те или иные файлы.

    Опять таки, из практики — порой удобно бывает закоммитить определенный файл в случае с хотфиксами.
    Ответ написан
    6 комментариев
  • Как создать в JQuery глобальную переменную?

    mannaro
    @mannaro Куратор тега JavaScript
    Умею профессионально гуглить
    window.a = 5;
    или просто
    a = 5;
    без указания var
    Ответ написан
    2 комментария
  • Как решить проблему с отображением слайдера Slick?

    @PerfectLab
    Попробуйте инициализировать слайдер после клика на таб:
    $(".slider").slick('reinit');
    Ответ написан
    8 комментариев
  • Как подключить HDD от Mac к Windows?

    DevMan
    @DevMan
    если нужно только чтение, то фришный HFSExplorer
    если нужна запись, то платные MacDrive или HFS+ for Windows
    Ответ написан
    2 комментария
  • Как в google docs spreadsheets скопировать много строк и вставить их выше быстро?

    @vladeol
    Выделить 32 строки, правой кнопкой - вставить 32 строки выше
    Ответ написан
    Комментировать
  • Как поставить права на папку /var/www?

    Для начала создай группу:
    sudo groupadd groupname
    Затем добавь себя в эту группу:
    sudo gpasswd -a username groupname
    После чего дай созданной группе права на запись в каталог:
    sudo chown -R root:groupname /var/www
    sudo chmod 775 /var/www

    username и groupname заменить на своё. Может понадобиться перелогиниться.
    Ответ написан
    3 комментария
  • Как подключить скрипт после загрузки ajax?

    PretorDH
    @PretorDH
    HTML5, CSS3, PHP, JS - люблю в чистом виде.
    jQuery.getScript()
    Делает запрос к серверу без перезагрузки страницы, с запросом javascript файла. При получении запрошенного файла, код внутри него будет автоматически выполнен. Метод имеет параметры:
    jQuery.getScript(url, [success(data, textStatus)]):XMLHttpRequestv:1.0
    url — url-адрес js-файла.
    success(data, textStatus) — пользовательская функция, которая будет вызвана после удачного выполнения загруженного js-файла.

    data — данные, присланные с сервера.
    textStatus — статус того, как был выполнен запрос.
    Примеры

    Запросим у сервера файл "test.js", который будет автоматически выполнен, как только загрузится:
    $.getScript("test.js");

    Загрузим файл и выведем сообщение, после его удачного выполнения:
    $.getScript("test.js", function(){
       alert("Скрипт выполнен.");
     });
    Ответ написан
    7 комментариев
  • Как правильно реализовать сайт с страницами под каждый город страны?

    RotgarSett
    @RotgarSett
    SEO Эксперт
    1. Если делать вычисление по айпи юзера, это удобно, но в таком случае необходимо будет обязательно добавлять в исключения роботов поисковых систем, чтобы им не показывался только одна страница при заходе (у яндекса айпи московские).
    2. Если делать один сайт под все города, нужна чёткая структуризация разделов. В голове без подручных средств не воспроизвести всё что необходимо. Но основываясь на описании:
    - каждый город должен быть разделом. Внутри раздела идут страницы с двумя услугами
    - на странице контактов нужны ссылки на все страницы городов
    - в зависимости от количества городов, страницы услуг должны быть перелинкованы. т.е. внутри услуг нужны ссылки на соседние города из того же региона
    - у каждого города желательно должны быть свой номер, адрес, время работы, фото персонала.
    3. Самым лучшим, недорогим и быстрым способом продвинуться под регионы всё-таки остаются поддомены. Но я не знаю на счёт сложности разработки црм под поддомены, потому что фактически это разные домены. Но если поддомены не станут проблемой для црм, то это лучший вариант развития. С ними вот такая схема
    - под каждый город делаем отдельный поддомен с услугами
    - на главном сайте на странице контактов ставим ссылки на все поддомены, указывая в каких городах мы предоставляем услуги
    - на поддоменах присутствуют только по 2 страницы с разыными услугами, вся остальная информация на основном домене.
    - в вебмастере яндекса чётко указываем каждому поддомену свой регион
    4. Один сайт
    плюсы:
    - "вес" не размазывается, сохраняется и копится на одном доменном имени
    - удобство под разработку црм системы
    - простота программирования при необходимости (добавление услуг, изменение функционала и т.д.)
    минусы
    - поисковые системы довольно долго будут определять релевантность той или иной страницы (3-6 месяцев)
    - нельзя точечно указать регион в Яндексе
    - сложность в указании ссылок на сайты организаций на яндекс/гугл картах (могут принять за спам, поскольку домен один и тот же. Время на выяснение с тех поддержкой. В итоге могут вообще запретить указывать ссылки на один домен в разных городах)
    5. Поддомены
    плюсы
    - чёткое разделение по городам (для пс поддомен - отдельный сайт)
    - точное указание региона в яндексе
    - нет проблем с картами яндекс/гугл
    - более быстрое определение релевантности и позиций по запросам (2-3 мес)
    минусы
    - возможные проблемы в разработке црм
    - более дорогая разработка относительно одного сайта из-за более сложного функционала взаимосвязи поддоменов и основного домена
    Ответ написан
    7 комментариев
  • Почему крупные сайты не используют адаптивную верстку?

    gobananas
    @gobananas
    finishhim.ru
    У них всего слишком много думаю и просто сложить не вариант. Страницы на мобилах будут огромные, некоторые блоки не просто складывать а скрывать придётся, а тогда зачем их грузить. К тому же если человек с мобилки мы можем определить её марку и в играх рекомендовать уже не все, а только для этой платформы что-то.
    Причин много, но правило простое: когда нам нужны очень разные сайты или на основном сайте есть то, что не нужно в мобильном лучше сделать разные версии чем заниматься с адаптивностью. Хотя в малых компаниях, командах адаптивность проще поддерживать.
    Ответ написан
    2 комментария
  • Как оптимизировать видео, вставляемое в качестве фона?

    Taraflex
    @Taraflex
    Ищу работу. Контакты в профиле.
    Уменьшите битрейт и разрешение видео.
    Переместите метаданные в начало mp4 контейнера
    Установите preload="metadata"
    htmlbook.ru/html/video/preload

    Чтобы пиксели в глаза не бросались наложите на видео сеточку из маленьких черных точек
    https://jsfiddle.net/soumyabg/wefLyrhp/
    css background dotted overlay
    Ответ написан
    5 комментариев
  • Расскажите подробно про php://input, как пользоваться?

    php://input возвращает все необработанные данные после HTTP-заголовков запроса, независимо от типа контента.

    Данные, могут быть:
    • application/x-www-form-urlencoded ( application/x-www-form-urlencoded тип application/x-www-form-urlencoded для простых форм- application/x-www-form-urlencoded ) или
    • multipart/form-data-encoded (в основном multipart/form-data-encoded для загрузки файлов)

    Это связано с тем, что это единственные типы контента, которые должны поддерживаться браузерами. Поэтому сервер и PHP традиционно не ожидают получения какого-либо другого типа контента (что не означает, что они не могли бы).

    Если вы просто отправляете POST-ом обычную HTML-форму, запрос выглядит примерно так:
    POST /page.php HTTP/1.1
    key1=value1&key2=value2&key3=value3

    Но если вы много работаете с Ajax, может понадобиться обмен более сложными данными с типами (строка, int, bool) и структурами (массивы, объекты), поэтому в большинстве случаев JSON является лучшим выбором. Но запрос с JSON-полезной нагрузкой выглядел бы примерно так:
    POST /page.php HTTP/1.1
    {"key1":"value1","key2":"value2","key3":"value3"}

    Теперь содержимое будет application/json (или, по крайней мере, ни один из вышеперечисленных), так что $_POST -wrapper из PHP не знает, как с этим справиться (пока).

    Данные всё еще там, вы просто не можете получить к нему доступ через $_POST. Поэтому вам нужно получить его с "сыром" виде помощью file_get_contents('php://input') (если он не закодирован в формате multipart/form-data).

    Это также способ доступа к XML-данным или любому другому нестандартному типу контента.
    Ответ написан
    Комментировать
  • Заработок на вёрстке?

    zorro76
    @zorro76
    Изучил html, css процентов так на 70.
    это еще не тот уровень, который даст Вам возможность быть востребованным на фриласнсе, кроме того что такое 70%? Это Ваше субъективное мнение, покажите работ 10 сверстанных Вами, и я скажу насколько Вы готовы.
    Когда я доучу JS - могу идти верстать за зелёные?
    вы может даже сейчас идти себя пробовать на фрилансе, но понятно не за зеленные, а за деревянные и начинать с мелких подработок. Поверьте, даже если Вы изучите все на 100% на бирже Вы полный ноль без завршенных проектов, и что бы набить себе рейтинг, Вам придется очень много всякой мелочи сверстать за гроши. Никто новичку не даст проект в работу, это 100%.
    Ответ написан
    4 комментария
  • Какой опыт Git нужен веб-разработчику для работы в команде в компании?

    Желательно понимать, что делают и зачем нужны следующие команды:
    git status
    git checkout
    git reset
    git fetch
    git pull
    git push
    git diff
    git add
    git commit
    git stash
    Ответ написан
    7 комментариев
  • Как перестать кодить и начать программировать?

    BuriK666
    @BuriK666
    Компьютерный псих
    Если ваш старый код, для вас выглядит ужасно, то значит вы развиваетесь. Бейте тревогу когда начнете "идеально" писать.
    Ответ написан
    11 комментариев