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

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

Я хотел бы, чтобы мобильные пользователи перенаправлялись с не-AMP версии сайта на AMP версию.
Перенаправление главной страницы работает корректно, но с категориями это не так.

Этот файл htaccess проходит онлайн-валидатор без каких-либо проблем, как указано здесь: ссылка

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

#главная страница
RewriteCond %{HTTP_USER_AGENT} iphone|ipad|android|blackberry [NC]
RewriteCond %{REQUEST_URI} ^/$
RewriteCond %{REQUEST_URI} !^/amp/$
RewriteRule ^ amp/ [R=301,L,QSD]

#страница категории
RewriteCond %{HTTP_USER_AGENT} iphone|ipad|android|blackberry [NC]
RewriteCond %{REQUEST_URI} !^/amp/$
RewriteCond %{REQUEST_URI} ^/(dom|zdorovye|krasota|novosti|otnosheniya|technologies|finansy|ezoterika)$ [NC]
RewriteRule ^(.*)$ amp/category/$1 [R=301,L,QSD]
</IfModule>

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

Проблема перенаправления с мобильной версии на AMP-версии категорий

Перенаправление мобильных пользователей с непроцессируемой (non-AMP) версии на AMP-версии вашего сайта имеет свои тонкости, особенно когда дело касается страниц категорий. Ваша конфигурация .htaccess корректно обрабатывает перенаправление главной страницы, но не работает для страниц категорий. Разберёмся в этом вопросе более подробно.

1. Анализ текущего кода

Ваш файл .htaccess выглядит следующим образом:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

# Главная страница
RewriteCond %{HTTP_USER_AGENT} iphone|ipad|android|blackberry [NC]
RewriteCond %{REQUEST_URI} ^/$
RewriteCond %{REQUEST_URI} !^/amp/$
RewriteRule ^ amp/ [R=301,L,QSD]

# Страница категории
RewriteCond %{HTTP_USER_AGENT} iphone|ipad|android|blackberry [NC]
RewriteCond %{REQUEST_URI} !^/amp/$
RewriteCond %{REQUEST_URI} ^/(dom|zdorovye|krasota|novosti|otnosheniya|technologies|finansy|ezoterika)$ [NC]
RewriteRule ^(.*)$ amp/category/$1 [R=301,L,QSD]
</IfModule>

Давайте проанализируем ситуацию.

2. Объяснение текущей конфигурации

  • Главная страница: Первая часть кода успешно обрабатывает мобильные перенаправления для главной страницы. Условия проверки HTTP_USER_AGENT и REQUEST_URI срабатывают и перенаправляют запросы на AMP-версию, если пользователь использует мобильное устройство.

  • Страницы категорий: Во второй части код проверяет, соответствует ли REQUEST_URI одной из указанных категорий. Если это так, то выполняется перенаправление на соответствующую AMP-страницу.

3. Возможные причины сбоя

Можете столкнуться с трудностями в перенаправлении страниц категорий по следующим причинам:

  • Неверные пути: Убедитесь, что путь к вашим AMP-страницам правильно прописан в правил перенаправления. Проверьте структуру ваших URL и углубляйтесь в логи сервера на предмет потенциальных ошибок.

  • Кеширование: Также возможно, что кеш браузера или серверное кеширование мешает корректной работе перенаправлений. Попробуйте очистить кеш и протестировать перенаправления в режиме инкогнито.

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

4. Рекомендуемые действия

Для решения проблемы с перенаправлением страниц категорий попробуйте выполнить следующие действия:

  • Проверка структуры URL: Убедитесь, что все целевые AMP-URL соответствуют тем, что заданы в ваших правилах. Например, если они имеют вид /category-name, вам нужно будет правильно указать их в правилах перенаправлений.

  • Обновление правил перенаправления: Если вы используете динамически генерируемые URL для категорий, вам может потребоваться более универсальное правило, которое учтет все возможные пути. Можно рассмотреть вариант:

RewriteRule ^(dom|zdorovye|krasota|novosti|otnosheniya|technologies|finansy|ezoterika)/?$ amp/category/$1 [R=301,L,QSD]
  • Логи для отладки: Включите логи Apache для модуля mod_rewrite, чтобы увидеть, какие правила применяются и принимаются ли правильные условия.

5. Заключение

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

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

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