SeoA

Рейтинг
53
Регистрация
12.04.2024
юни #:
По каким конкретно параметрам?

Прокси серваки кривые, сами отдают заголовки что они прокси. На этом рынке полно перекупов, которые не парятся в этом плане.

Sultan #:

Если все URL-адреса страниц на сайте заканчиваются одинаковыми числами, например -2025 или -2026, это может отрицательно повлиять на SEO сайта?


Например:

Site.com/example-2025

Site.com/example1-2025

Site.com/example2-2025


По цифрам не знаю, а вот если у всех будет одинаковое слово в конце урла, то нет проблем.

Mik Foxi #:
так суть обращения из пхп:  скрипт шлет все данные в сервис, в ответ ждет только ок или не ок. если там что-то другое то ничего не происходит (у меня так). тогда ни сервис, ни кто-то посредине (mitm) ничего не подменит.

Так я и говорю, что сегодня он шлёт одно, а завтра другое. Вот будет у хозяина скрипта плохое настроение и он поменяет поведение скрипта, напишет, например: Подтвердите, что вы не ишак: Да или Нет😀

Mik Foxi #:
если нет автообновления скрипта, то не подменят, если ты как владелец сайта сам заливаешь, то что залил то и будет.

Это относится к физическому файлу, который установлен на твоем хостинге, а в нашей ситуации у тебя такого файла нет, он подтягивается со стороны.

Mik Foxi #:

никаких внешних js не надо тянуть на сайт. это вообще главная рекомендация 2025 для любых сайтов - смотреть что вы ставите с внешним js на сайт. когда вы ставите чужой php - вы можете проверить на явные и потенциальные уязвимости и функционал, проверил, все норм, поставил. а js - сегодня он  тянет чтото полезное, а ночью когда ты спишь оно тырит твой траф... 

А php потом нельзя ничего поменять? 

Сегодня он тебе, например, определяет айпи посетителя, а завтра загружает баннер с рекламой.

Решение? Только индивидуальный скрипт, без ссылок на другой домен.

Mik Foxi #:
серверная интеграция - сервер спрашивает только: этот юзер ок или не ок. и ты серверу ничего плохого не сделаешь.

Ошибаешься. Расширение php не мешает отдавать чистый js в который можно прописать что угодно.

Получается и так и так не безопасно😀

Решение? Только индивидуальный скрипт, без ссылок на другой домен.

Если он работает, как я думаю, то это неплохая идея. Почему другие не догадались до этого раньше? 
Можно и самому написать, там проще простого и использовать на сетке своих сайтов.
Загрузи disavow в gsc и подожди несколько месяцев, может поможет.
А если хочется побыстрее, то надо закупить качественные бэклинки.
Но ты мало дал информации, может конкурент встал выше тебя, может трафик шёл по длинному хвосту и его тупо больше не показывают. Надо на общую картину смотреть.
Это связано с удобством, организацией и технической необходимостью, а не с низкоуровневой скоростью обработки (парсинга) основных стилей.
Вот несколько причин, почему этот порядок стал классическим:
1. Организация и Удобство Разработчика
Это самый главный фактор. Файл стилей организуется по логике зависимостей и влияния на общую картину:
 * Ресет/Нормалайз: Должны идти первыми, чтобы сбросить или нормализовать стили браузеров до того, как будут применяться все остальные стили.
 * Переменные. Если переменные объявлены в начале (:root {}), они становятся доступными для использования во всем последующем коде.
 * Шрифты (@font-face): Они объявляются в начале, чтобы убедиться, что браузер начнет их загрузку как можно раньше.
Это позволяет любому разработчику, открывшему файл, быстро понять базовые настройки проекта.
2. Принцип Каскада (Для конфликтов)
Хотя ты не о нем, он играет роль:
 * Стили, которые должны быть легко переопределены (например, стили тегов в ресете), идут первыми.
 * Стили, которые должны быть последним словом (например, специфичные стили для модулей или утилит), часто идут ближе к концу, чтобы победить в случае конфликта с более общими правилами с одинаковой специфичностью.
3. Технические Исключения (Директива @charset)
Ты правильно указал на единственное строгое исключение — директиву @charset.


 * Назначение: Директива @charset указывает кодировку символов для таблицы стилей.
 * Требование: Согласно спецификации CSS, она должна быть самым первым элементом в таблице стилей (ей не может предшествовать даже пробел), кроме BOM  если он используется. Если она стоит ниже, парсер ее просто игнорирует.
Это не связано со скоростью рендеринга, а исключительно с правилами, которые парсер должен применить, чтобы правильно декодировать байты файла в символы, которые он может прочитать.

В итоге:

Таоё первоначальное понимание остается верным:

> Порядок стилей внутри CSS-файла (кроме @charset и логических зависимостей) не влияет на низкоуровневую скорость парсинга и обработки основных свойств.
Браузер считывает весь файл, строит CSSOM, а затем использует его, чтобы вычислить конечные стили для всех элементов разом, а не отрисовывает их по мере прочтения. Организация сверху вниз — это, прежде всего, стандартная практика разработки для обеспечения порядка и читаемости.

Dmitriy_2014 #:
Ну то есть смысла переставлять самые важные свойства вверх нет, что они будут в самом начале, что в самом конце css файла, не влияет ровным счетом не на что(Ну кроме каскадирования, но я не про него), правильно я понял.

Да,  абсолютно правильно.

Смысла переставлять "самые важные" свойства в начало CSS-файла (или даже в начало блока правил) нет. Это не повлияет на скорость обработки или рендеринга страницы.

Суть процесса

* Парсинг всего файла: Браузер сначала полностью загружает и парсит весь CSS-файл, чтобы построить CSSOM (CSS Object Model).

* Вычисление стилей: После построения CSSOM и DOM (из HTML) браузер вычисляет конечный, объединенный набор стилей для каждого элемента на странице. Он не применяет свойства по одному, проходя по файлу сверху вниз. Он видит все свойства сразу.

* Применение каскада: Правила каскада (специфичность, важность, и, в последнюю очередь, порядок в файле) используются только для разрешения конфликтов между разными правилами. Если конфликта нет (например, ты просто переставляешь width и height местами), порядок не имеет значения.

Итог: Для производительности и скорости рендеринга не имеет значения, где в файле находится правило для body или main-container. Важно, чтобы файл был загружен и разобран (parsed) как можно быстрее, а не в каком порядке внутри него расположены правила.

Теперь ты спросишь, а как же отрисовка?

Обработка CSS связана с процессом отрисовки (Rendering).

Обработка CSS-файла — это лишь первый этап. После него происходит сложный многоступенчатый процесс, который в итоге приводит к отображению страницы на экране.

Как CSSOM влияет на Отрисовку

Процесс отрисовки (Критический Путь Рендеринга) состоит из нескольких ключевых шагов:

1. Построение CSSOM (CSS Object Model)

Как мы обсуждали, браузер парсит весь CSS-файл и создает древовидную структуру CSSOM. Поскольку стили могут влиять на внешний вид и положение любого элемента, браузеру нужно иметь полную картину всех стилей, прежде чем он сможет начать рендеринг. Именно поэтому CSS блокирует рендеринг.

2. Построение Дерева Рендеринга (Render Tree)

Дерево рендеринга создается путем объединения DOM (содержимое) и CSSOM (стили).

* Браузер проходит по каждому узлу DOM.

* Он собирает все потенциально применимые правила из CSSOM (используя правила каскада, специфичности и наследования).

* Он вычисляет конечный, абсолютный (например, из em в px) набор стилей для этого узла.

* Он добавляет узел и его вычисленные стили в Дерево Рендеринга. Ну кроме display: none не включаются в это дерево.

3. Компоновка 

После того как Дерево Рендеринга сформировано, браузер определяет точное геометрическое положение и размер каждого элемента на экране. Этот процесс называется компоновкой или перекомпоновкой (reflow). Он должен знать, где именно находится каждый элемент, чтобы начать его рисовать.

4. Отрисовка 

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

в итоге что? Роль CSS в отрисовке

Таким образом, твой CSS-файл напрямую не "рисует" страницу, пока браузер идет по нему сверху вниз. Вместо этого:

* CSS-файл должен быть полностью обработан для создания CSSOM.

* CSSOM является основой для создания Дерева Рендеринга.

* Дерево Рендеринга является основой для Компоновки и Отрисовки.

Если бы браузер пытался отрисовывать страницу, читая CSS сверху вниз, он мог бы начать рендерить один элемент, но потом, обнаружив в конце файла правило с высокой специфичностью, ему пришлось бы останавливаться, пересчитывать стили и полностью перерисовывать элемент, что привело бы к постоянному "мерцанию" и нестабильности. Построение CSSOM заранее гарантирует, что отрисовка начнется только тогда, когда у браузера есть все необходимые данные о стиле.

Все просто.


Всего: 730