Перейти к содержанию

Типичные проблемы

Здесь собрана информация о проблемах и вопросах, которые поднимаются на форуме Grav и в чате Discord достаточно часто, чтобы мы решили сэкономить время и перечислить проблему и её решение в одном легкодоступном месте.

Не удаётся подключиться к GPM

Проблема: GPM недоступен, и вы получаете эту ошибку в админке

Решение:

Сначала убедитесь, что в PHP установлены cURL и OpenSSL. Это можно проверить в админке, в разделе Configuration -> Info. Там должен быть раздел «OpenSSL» с OpenSSL support: enabled. То же для cURL: раздел с cURL support: enabled.

Если всё в порядке, убедитесь, что вы не работаете через прокси. Если работаете, настройте его в системной конфигурации Grav и убедитесь, что с соединением нет проблем.

Затем проверьте права доступа.

Если после всего этого проблемы с подключением к GPM остались, учтите: мы заметили, что на некоторых серверах (в основном на локальных машинах с Windows) возникают проблемы с проверкой SSL-сертификата getgrav.org, хотя у него рейтинг A. Чтобы обойти эту проблему, мы добавили новый системный параметр system.gpm.verify_peer, включённый по умолчанию. Задайте ему значение false и попробуйте снова.

Если и на этом этапе ничего не работает, свяжитесь с нами или напишите об этом, если вас направили сюда из чата или с форума.

Также проверьте, работает ли команда CLI: подключитесь к серверу по SSH, выполните bin/gpm index и посмотрите, возникает ли ошибка только в админке или в командной строке тоже.

Не прокручивается интерфейс админки

Проблема: при открытии интерфейса плагина Admin страница не прокручивается

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

  • Жёстко перезагрузите страницу: очистите кэш браузера, а затем обновите её.
  • Убедитесь, что у вас последняя версия Grav, и переключитесь на язык по умолчанию — английский. Если прокрутка заработала, пожалуйста, сообщите о проблеме с этим языком.
  • Если вы используете CloudFlare для HTTPS или как CDN, его оптимизация JS (включена по умолчанию) может блокировать рендеринг скриптов. Чтобы отключить её, войдите в CloudFlare, выберите нужный домен и сделайте одно из следующего:
    1. Чтобы отключить оптимизацию полностью, перейдите в «Speed» и прокрутите до «Rocket Loader».
      • Установите «Off» — CloudFlare не будет блокировать скрипт, но вы также не получите выгоду от его оптимизации.
    2. Чтобы отключить оптимизацию только для админки Grav, перейдите в «Page Rules» и нажмите кнопку «Create Page Rule».
      • В поле «If the URL matches» введите имя домена, а затем /admin, например: example.com/admin.
      • Нажмите «Add a Setting» и в выпадающем списке найдите «Rocket Loader». Выбрав его, измените значение в «Select Value» на off.
      • Оставьте поле «Order» как есть, по умолчанию там First.
      • Наконец, нажмите кнопку «Save and Deploy».

Если ничего из этого не помогло, проверьте консоль браузера на ошибки JavaScript: в Chrome или Firefox нажмите F12 или Ctrl+Shift+I, затем откройте вкладку «Console». Сообщите об ошибках.

Fetch failed

Иногда в админке может появляться красное всплывающее окно «Fetch Failed». Если это случается время от времени, не беспокойтесь: возможно, это просто проблема с соединением.

Но если оно появляется каждый раз, одна из причин, с которой сталкиваются некоторые пользователи, — mod_security блокирует сетевые запросы Grav.

Это решается поиском и отключением срабатывающих правил; в зависимости от конфигурации mod_security они могут отличаться от случая к случаю.

Если у вас свой сервер, руководство есть на http://www.inmotionhosting.com/support/website/modsecurity/find-and-disable-specific-modsecurity-rules, иначе просто обратитесь к хостинг-провайдеру и опишите проблему.

Связанная проблема: admin#951

Zend OPcache API is restricted

Если вы работаете с PHP и Zend OPcache и получаете эту ошибку, значит текущая конфигурация OPCache ограничивает доступ к функциям OPcache API только скриптами из указанной строки. Проще всего найти эту директиву в php.ini или в отдельном opcache.ini, который подключается к общему php.ini, и задать пустое значение:

opcache.restrict_api=

Эта проблема возникает на любом хостинге, управляемом ServerPilot, с включённым PHP 7.2. Запрос на исправление отправлен на их стороне.

Не работает публикация в LinkedIn и индексация в Wayback Machine

Проблема: при публикации страниц в LinkedIn данные страницы не передаются. Wayback Machine неправильно индексирует страницы моего сайта.

Решение: включите Gzip веб-сервера или gzip-сжатие. Можно использовать оба, но хотя бы один должен быть активен, чтобы это работало на некоторых серверах.

Эта проблема возникала у пользователей в определённых серверных окружениях. В частности, на облачных серверах AWS пользователи сталкивались с тем, что страницы их сайтов Grav некорректно публиковались в LinkedIn или неправильно индексировались Wayback Machine. Проблема решилась включением Gzip веб-сервера или gzip-сжатия.

Не прокручивается админка на CloudFlare

У пользователей CloudFlare может нарушаться прокрутка в админке. Вот решения:

В интерфейсе CloudFlare перейдите в Speed и отключите Rocket Loader (или через page rule).

Его также можно отключить в (по умолчанию) «автоматическом» режиме с помощью data-атрибута на скриптах: <script data-cfasync="false" src="/javascript.js"></script>.

Пример page rule — совпадение URL example.com/staging/*/admin, где * — подстановочный знак, означающий любое имя папки. В настройках добавьте Rocket Loader и выберите Off.