Задать вопрос
  • Как заблокировать доступ к ресурсу для конкретного региона?

    ky0
    @ky0 Куратор тега Nginx
    Миллиардер, филантроп, патологический лгун
    Рабочий вариант, не полагающийся на разной степени редко обновляемые географические базы IP-адресов - закрыть SSH совсем и ходить только из локальной сети, например через впн.

    С веб-сервером сложнее - тут без подключения посторонних сервисов выбор невелик - модуль geoip или ручное перечисление диапазонов релевантных стран.
    Ответ написан
    1 комментарий
  • Как заблокировать доступ к ресурсу для конкретного региона?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    GeoIP ngx_http_geoip_module

    1. Nginx должен включать модуль ngx_http_geoip_module.
    2. Качаем БД GeoLite2 Country.
    3. Пример конфига (nginx.conf), с отправкой всех из Индии в 403 лес:
    http {
        geoip_country /path/to/GeoLite2-Country.mmdb;
        map $geoip_country_code $allowed_country {
            default yes;
            IN no; # banned india
        }
    }
    
    server {
        if ($allowed_country = no) {
            return 403;
        }
    }
    Ответ написан
    5 комментариев
  • Работает ли сейчас meta keywords?

    vpetrov
    @vpetrov
    частный SEO-специалист
    Ненужный метатег, пережиток прошлого. Сейчас ПС от самого понятия "ключевые слова" переходят к сущностям и контексту, а тут - аж прямое указание, по каким ключевым словам стоит ранжировать страницу.
    В архив.
    Ответ написан
    Комментировать
  • Работает ли сейчас meta keywords?

    Rekrun
    @Rekrun
    Seo scram
    Вместо того, чтобы сосредотачиваться только на ключевых словах, рекомендуется разработка полезных и информативных контентов, которые будут привлекать посетителей и удовлетворять их потребности. Это может включать в себя написание интересных статей, создание полезных видеороликов, разработку инструкций или руководств, предоставление экспертных советов и многое другое. Важно создавать такой контент, который будет действительно полезен вашим клиентам и поможет им решить их проблемы. Помимо этого, стоит обратить внимание на оптимизацию сайта с точки зрения технического SEO, чтобы обеспечить удобство навигации, быструю загрузку страниц, улучшенную доступность и другие факторы, способствующие повышению ранжирования в поисковой выдаче. Ваш подход к SEO, сосредотачиваясь на создании качественного контента и улучшении пользовательского опыта, является важным и правильным. Скинь сайт в комент глянем что у тебя там.
    Ответ написан
    Комментировать
  • Работает ли сейчас meta keywords?

    @archelon
    В свое время (лет 15-20 назад) популярным и относительно эффективным методом продвижения было «забить в кейвордз как можно больше ключей, неважно релевантных или нет». Алгоритмы давно невзлюбили переспамленность ключами как в мета-тегах, так и в тексте.
    Сейчас только Яндекс говорит, что учитывает keywords. Но как он его учитывает, мы достоверно не знаем. Что если Яндекс считает использование keywords негативным фактором? В официальных рекомендациях keywords упоминается, но ничего не говорится о важности его заполнения, в отличие от description, заголовков, микроразметки и т.д.
    Ответ написан
    Комментировать
  • Можно ли установить NFC-модуль в телефон?

    @pfg21
    ex-турист
    практически нереально.
    к железкам надо будет написать драйвера под древний андроид, а скорей всего к данному телефону нет никаких исходников и потом налаживать на работу....
    Ответ написан
    2 комментария
  • Работает ли сейчас meta keywords?

    opium
    @opium
    Просто люблю качественно работать
    оно уже не работает с года 2010 так что можно не переживать и заполнять ее как обычно
    Ответ написан
    Комментировать
  • Работает ли сейчас meta keywords?

    Mike_Ro
    @Mike_Ro Куратор тега Поисковая оптимизация
    Python, JS, WordPress, SEO, Bots, Adversting
    Но вот на днях прочитал, что meta keywords считается застарелым и поисковики его не используют сейчас.

    Не совсем. ПС использует любые факторы о сайте для его ранжирования, просто некоторые факторы важнее других. В моем списке, keywords стоят на 34 позиции из 53, по влиянию на ранжирование.

    Гуглите "seo check list".
    Ответ написан
    1 комментарий
  • Работает ли сейчас meta keywords?

    szQocks
    @szQocks
    Работает ли сейчас meta keywords?
    - работает, но можно не заполнять ключевыми словами, пусть это сделает робот за тебя, но сам тег должен присутствовать на странице

    мертвые ссылки ( например ссылки с решеткой ) - это минус, таких ссылок не должно быть
    раскидай ARIA-атрибуты по минимуму
    на каждой странице свой дескрипшн
    сделать sitemap
    сделать robots.txt

    так же разобраться с одинаковым контентом где присутствуют ссылки, почитать подробнее про аттрибут canonical
    Ответ написан
    1 комментарий
  • Как правильно сделать граф?

    wataru
    @wataru
    Разработчик на С++, экс-олимпиадник.
    Странная структура... Ну если вам так хочется, то "сделать поиск по кругу на N радиус от ячейки" делается обходом в ширину.
    Ответ написан
    Комментировать
  • Как реализовать функцию статистики просмотра страницы за некий период?

    При каждом вызове страницы в конце добавляется вставка этого вызова в БД.
    Записывать можно URL, параметры, инфо о браузере, время и т.п. Об ID записи вообще не надо думать, просто таблица с автогенерацией ID. Никакие ON DUPLICATE тогда не нужны.
    Для статистики - COUNT, WHERE, ORDER BY и т.д. (я про MySQL, но, полагаю, и в POSTGRES есть такое)
    В таблице делаете поле типе DATETIME, по умолчанию CURRENT TIMESTAMP. Таким образом, оно будет заполняться автоматически.
    При выборке за день задаете WHERE DATE(имя_поля)=требуемая_дата. Вот и статистика
    за день.
    Кстати, IP имеет смысл записывать, хоть оно и не идентифицирует юзера, но несет много информации.
    Если кто-то нечаянно нажмет CTRL-R, статистике это абсолютно не повредит.
    Если же кто-то будет усердно нажимать эту комбинацию в течение часа, он явно заслужил наше дополнительное внимание. Такого юзера легко выделить и убрать его заходы из таблицы.
    Ответ написан
    Комментировать
  • Как загнать в dictionary key как null?

    AshBlade
    @AshBlade Куратор тега C#
    Просто хочу быть счастливым
    Напиши обертку
    var dict = new Dictionary<MyNullableInt, string>();
    dict[null] = "hello, world!";
    
    Console.WriteLine(dict[null]); // Output: hello, world!
    
    
    struct MyNullableInt: IEquatable<MyNullableInt>, IEquatable<int?>
    {
        public int? Value { get; set; }
        public bool Equals(MyNullableInt other)
        {
            return other.Value == Value;
        }
    
        public bool Equals(int? other)
        {
            return other == Value;
        }
    
        public static implicit operator MyNullableInt(int? value)
        {
            return new MyNullableInt() {Value = value};
        }
    
        public static implicit operator int?(MyNullableInt value)
        {
            return value.Value;
        }
        
        public override bool Equals(object? obj)
        {
            if (obj is int value)
            {
                return value == Value;
            }
    
            if (obj is MyNullableInt mni)
            {
                return mni.Value == Value;
            }
    
            return false;
        }
    
        public override int GetHashCode()
        {
            return Value.GetHashCode();
        }
    }
    Ответ написан
    3 комментария
  • На сколько сложно создать офлайн генератор иконок?

    AshBlade
    @AshBlade
    Просто хочу быть счастливым
    Самостоятельно создать - крайне сложно.
    За деньги нанять - легко, но придется выложиться крупно.

    Гораздо выгоднее будет просто купить подписку на freepik
    Ответ написан
    Комментировать
  • Какой язык лучше всего подойдет для олимпиад?

    AshBlade
    @AshBlade
    Просто хочу быть счастливым
    Язык - C++. Однажды участвовал и в команде все писали на питоне - не прошли по времени.
    Где и как - решай задачи с acmp
    Ответ написан
    Комментировать
  • Как исправить ошибку 403 при попытке доступа?

    AshBlade
    @AshBlade Куратор тега C#
    Просто хочу быть счастливым
    403 ошибка означает ошибку авторизации.
    Короче говоря, нужно залогиниться и все пройдет. Как происходит логин в этом API это уже другой вопрос (имя/пароль, токен доступа и т.д.)
    Ответ написан
    Комментировать
  • Как реализовать функцию статистики просмотра страницы за некий период?

    ThunderCat
    @ThunderCat Куратор тега Веб-разработка
    {PHP, MySql, HTML, JS, CSS} developer
    Важно, что бы это была статистика за день/месяц/год/всё время.
    Первое что нужно - определитесь с минимальной статистической единицей, если это день - значит храните сумму за день, табличка соответственно будет что-то типа:
    id, page_id, date, views;
    Соответственно если нужен меньший таймфрейм - дата будет уже дататайм. Далее простой джоин, груп с аггрегацией и sum()
    Ответ написан
    9 комментариев
  • Как правильно расшифровать данные из изображения в c#?

    AshBlade
    @AshBlade Куратор тега C#
    Просто хочу быть счастливым
    Нашел много недочетов, но главная ошибка здесь:
    char charToEncode = textToEncrypt[charIndex++];
    
                        byte[] colorBytes = new byte[] { originalColor.R, originalColor.G, originalColor.B };
                        for (int i = 0; i < 3; i++)
                        {
                            int bitIndex = (bitsPerChannel * i); 
                            if (bitIndex < 8)
                            {
                                colorBytes[i] = (byte)((colorBytes[i] & ~1) | ((charToEncode >> bitIndex) & 1));
                            }
                        }


    Я так полагаю, что символы сообщения кодируются в LSB, но проблема здесь в том, что кодируются только последние 3 бита - остальное (8 - 3 = 5 битов теряются). Т.е. сообщение восстановить никак

    + Сам цикл выглядит очень странно.
    Главный вопрос - зачем?
    Параметризовать алгоритм стеганографии подобным образом не очень оптимально, т.к. каждый создается с использованием тех или иных фич, который строго захардкожены и используют особенности конкретного формата. Цикл + проверка здесь только ухудшают понимание кода (ИМХО)
    Убери этот цикл, т.к. во-первых, станет понятнее, во-вторых, условие внутри при этой константе всегда выполняется.

    Теперь про декодирование:
    for (int i = 0; i < 3; i++)
                    {
                        int bitIndex = (bitsPerChannel * i);
                        if (bitIndex < 8)
                        {
                            charCode |= (byte)((encodedColor.ToArgb() >> bitIndex) & 1);
                            if (bitIndex <= 2)
                            {
                                charCode <<= bitsPerChannel;
                            }
                        }
                    }

    Вот этот участок тоже неправильно работает, т.к. ты кодируешь символы в LSB, а читаешь последние 3 бита - из них только 1 бит содержит данные.
    Ответ написан
    Комментировать
  • Как создать процедуру, которая будет возвращать что-то?

    @Akina
    Сетевой и системный админ, SQL-программист.
    Процедуры, в отличие от функций, не возвращают значение; поэтому в CREATE PROCEDURE отсутствует предложение RETURNS. Однако процедуры могут выдавать данные в вызывающий код через выходные параметры.

    https://postgrespro.ru/docs/postgresql/16/xproc (имеются в виду SQL-процедуры)

    Для возврата значений из PL/pgSQL процедуры используются OUT и INOUT параметры.

    https://postgrespro.ru/docs/postgresql/16/plpgsql-... (пример имеется)
    Ответ написан
    Комментировать
  • Как создать процедуру, которая будет возвращать что-то?

    trapwalker
    @trapwalker
    Программист, энтузиаст
    Вам нужно начать с туториала и примеров, а не с тупых статей в интернете и собственных догадок.
    Просто возьмите учебник и потратьте некоторое время на изучение самых базовых основ. Если вам лень этим заниматься. то почему вы думаете, что людям тут будет не лень сочинять вам индивидуальные экспресс-курсы по изучению основ баз данных?
    Ответ написан
    Комментировать
  • Зачем комментарии на сайте оборачивать в тег article?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега HTML
    его рекомендуют оборачивать тегом article
    Тут нужно дать ссылку на эту рекомендацию, чтобы мы могли её оценить не на уровне "Рабинович по телефону напел".

    его можно использовать в любом другом месте, а как использовать комментарий на другом сайте
    Когда говорят об использовании "в любом месте", подразумевают "любое место данного сайта". И в рамках сайта комментарий действительно может быть оторван от условного рецепта: например, в профиле пользователя может выводиться список всех его комментариев (как здесь) или в сайдбаре может выводиться список всех последних комментариев (как на vc.ru).

    На самом деле все эти семантические теги, введённые в HTML5, не оказывают абсолютно никакого влияния ни на что (за исключением небольшого количества функциональных тегов, которые упрощают доступность), так что вы можете не заморачиваться слишком сильно. Это не говоря про то, что семантика этих тегов жёстко привязана к конкретному сайту - то, что будет логично на одном, будет бредом на другом. Универсальных правил использования семантических тегов нет, есть рекомендации, которые вы вольны игнорировать.

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

    TLDR: Не хотите - не оборачивайте, не случится ровным счётом ничего. Это всего лишь рекомендация и примеры в них для семантических тегов иногда притянуты за уши, потому что эти теги в большинстве своём не решали какие-то реальные проблемы, а были введены для красоты, которая у каждого своя.
    Ответ написан
    7 комментариев