Типичные проблемы¶
Здесь собрана информация о проблемах и вопросах, которые поднимаются на форуме 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, выберите нужный домен и сделайте одно из следующего:
- Чтобы отключить оптимизацию полностью, перейдите в «Speed» и прокрутите до «Rocket Loader».
- Установите «Off» — CloudFlare не будет блокировать скрипт, но вы также не получите выгоду от его оптимизации.
- Чтобы отключить оптимизацию только для админки 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».
- В поле «If the URL matches» введите имя домена, а затем
- Чтобы отключить оптимизацию полностью, перейдите в «Speed» и прокрутите до «Rocket Loader».
Если ничего из этого не помогло, проверьте консоль браузера на ошибки 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, и задать пустое значение:
Эта проблема возникает на любом хостинге, управляемом 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.