✅ WEB і WordPress новини, теми, плагіни. Тут ми ділимося порадами і кращими рішеннями для сайтів.

WP-Rocket Plugin Automatic HTTPS Rewrite не пройшов перевірку AMP

20

WP-Rocket Plugin Automatic HTTPS Rewrite не пройшов перевірку AMP

AMP (Accelerated Mobile Pages) — це дуже сувора специфікація HTML5. Якщо є критичні проблеми з AMP, Google не буде їх індексувати. Наприклад, в AMP ви не маєте використовувати // – протокол для представлення URL-адреси HTTP або HTTPS залежно від поточного протоколу сторінки (але в HTML5 ви можете)

WP-Rocket Plugin Automatic HTTPS Rewrite не пройшов перевірку AMP

CloudFlare HTTPS Rewrite не пройшов перевірку AMP

На жаль, модуль [Automatic HTTPS Rewrites] плагіна ~CloudFlare~ WP Rocket Plugin не проходить перевірку AMP, тому ви повинні вимкнути його, інакше ви отримаєте такі помилки:

  • Тег "сценарій" заборонений, за винятком спеціальної форми.
  • Обов’язковий тег «сценарій amphtml engine v0.js» відсутній або неправильний.

Оновлення: Виявляється, це НЕ вина CloudFlare. Це плагін WP Rocket WordPress, який примусово вмикає перезапис HTTPS (у //) навіть на сторінках AMP.

Модуль WP Rocket Plugin [Automatic HTTPS Rewrites] переписує всі зображення, таблиці стилів і сценарії з використання http:// або https:// на використання просто // для підтримки гнучкого SSL.

WP-Rocket Plugin Automatic HTTPS Rewrite не пройшов перевірку AMP

wprocket-plugin-https-protocol-rewrite

CloudFlare запустив той самий HTML через тестовий домен на Cloudflare з увімкненим автоматичним перезаписом HTTP та підтвердив, що причиною цього не є CloudFlare.

  • CloudFlare вимикає функції перезапису спеціально для AMP. Але WP-Rocket Plugin має цю опцію на інформаційній панелі, яка знову вмикає його.
  • Автоматичне перезапис HTTPS не переписує URL-адреси на // – воно використовує лише повні абсолютні посилання, наприклад https://

WP-Rocket Plugin Automatic HTTPS Rewrite не пройшов перевірку AMP

cloudflare-automatic-https-rewrites

Якщо ви використовуєте WP-Rocket Plugin, ви можете написати плагін або додати таку функцію до свого шаблону, наприклад functions.php. Наступне вимикає лише «автоматичне перезапис HTTPS» на сторінках AMP, наприклад is_amp_endpoint()

add_action( 'wp', 'disable_cloudflare_automatic_https_rewrite_amp' );
function disable_cloudflare_automatic_https_rewrite_amp() {
    if (defined( 'AMP_QUERY_VAR') && function_exists( 'is_amp_endpoint') && is_amp_endpoint()) {
        $do_rocket_protocol_rewrite = apply_filters( 'do_rocket_protocol_rewrite', false );
        if (( get_rocket_option( 'do_cloudflare', 0) && get_rocket_option( 'cloudflare_protocol_rewrite', 0) || $do_rocket_protocol_rewrite)) {
            remove_filter( 'rocket_buffer', '__rocket_protocol_rewrite', PHP_INT_MAX );
            remove_filter( 'wp_calculate_image_srcset', '__rocket_protocol_rewrite_srcset', PHP_INT_MAX );
        }
    }
}

WP-Rocket не базується на Cloudflare, але він має параметри для налаштування Cloudflare.

  • Автоматичне перезапис HTTPS на Cloudflare безпечно використовувати з AMP
  • WP-Rocket Plugin має власну логіку для перезапису HTTPS, яку слід вимкнути, якщо ви використовуєте AMP

Джерело запису: helloacm.com

Цей веб -сайт використовує файли cookie, щоб покращити ваш досвід. Ми припустимо, що з цим все гаразд, але ви можете відмовитися, якщо захочете. Прийняти Читати далі