Не удается создать предварительный просмотр ссылок для веб-страниц нашего сайта.

Вопрос или проблема

Я создал одностраничное приложение на React. Но когда я делюсь ссылкой, она не генерирует превью ссылки, описание и заголовок. Я использовал мета-теги с metatags.io для превью, но это не сработало. Этот сайт развернут на Vercel

В моем index.html файле я добавил эти мета-теги:

<title>Мой сайт</title>
<meta name="title" content="Мой сайт" />
<meta name="description" content="Lorem ipsum dolor sit" />

<!-- Open Graph / Facebook -->
<meta property="og:type" content="website" />
<meta property="og:url" content="https://www.mywebsite.io/" />
<meta property="og:title" content="Мой сайт" />
<meta property="og:description" content="Lorem ipsum dolor sit" />
<meta property="og:image" content="./favicon.png" />

.

Ответ или решение

Проблема, связанная с отсутствием предпросмотров ссылок на ваш веб-сайт https://www.mywebsite.io/, может быть вызвана несколькими факторами. Давайте детально разберем, как вы можете решить эту проблему, учитывая использование React SPA и развертывание на платформе Vercel.

1. Характеристики Single Page Application (SPA)

React SPA загружает содержимое динамически, что приводит к тому, что при начальной загрузке страницы сервер не отдаёт контент с мета-тегами. Социальные сети и мессенджеры, такие как Facebook и Twitter, используют специальные боты для извлечения информации о страницах. Эти боты могут не получить необходимую информацию, если подробности мета-тегов загружаются через JavaScript, а не на начальной странице.

2. Проверка мета-тегов

Сначала убедитесь, что мета-теги правильно размещены в вашем файле index.html. На первый взгляд, код выглядит корректным:

<title>My website</title>
<meta name="title" content="My website" />
<meta name="description" content="Lorem ipsum dolor sit" />
<!-- Open Graph / Facebook -->
<meta property="og:type" content="website" />
<meta property="og:url" content="https://www.mywebsite.io/" />
<meta property="og:title" content="My website" />
<meta property="og:description" content="Lorem ipsum dolor sit" />
<meta property="og:image" content="./favicon.png" />

Проверьте:

  • Путь к изображению: Убедитесь, что путь к изображению ./favicon.png корректен и доступен для загрузки. Обычно рекомендуется использовать абсолютные URL для изображений.
  • Правильно ли настроенные URL: Убедитесь, что og:url ссылается на полное URL вашего сайта, включая https:// и не содержит лишних символов.

3. Использование серверного рендеринга

Для того чтобы мета-теги были доступны при первоначальном запросе, вы должны рассмотреть возможность использования серверного рендеринга (SSR) или статической генерации (SSG). Technologies такие как Next.js, который построен на React, позволяют вам генерировать HTML на сервере, что делает мета-теги доступными для ботов. Implementing server-side rendering ensures that when the social media bot crawls the URL, it sees the fully rendered page including your Open Graph tags.

4. Проверка данных мета-тегов

После внесения изменений, используйте инструменты отладки, чтобы проверить, как ваша страница отображается в социальных сетях:

  • Facebook Sharing Debugger: Позволяет вам проверить, как Facebook видит ваши мета-теги и кэширует информацию. Если вы внесли изменения, не забудьте использовать опцию "Scrape Again" для обновления кэша.
  • Twitter Card Validator: Аналогичный инструмент для Twitter, который проверяет правильность отображения ваших карт и мета-тегов.

5. Кэширование и обновления

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

6. Проблемы с Vercel

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

Заключение

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

Оцените материал
Добавить комментарий

Капча загружается...