undefined constant MODX_URL_SCHEME

Привет, переношу сайты с vps с nginx на хостинг sweb с apache.
Вроде почти всё работает, но в логах вылезает
[php7:warn] PHP Warning: Use of undefined constant MODX_URL_SCHEME — assumed 'MODX_URL_SCHEME' (this will throw an Error in a future version of PHP) in /home/os/public_html/core/model/modx/modx.class.php on line 1413

Что с этим делать? Так же её ловлю при входе в админку, после логина редиректит на site.ru/MODX_URL_SCHEMEsite.ru/manager/ что раздражает.
Николай
4 часа назад
modx.pro
47
0

Комментарии: 4

Николай Савин
3 часа назад
0
Привет. Предположу что, константы не определяются, потому что конфиг не подгружается.

Причина: файл core/config/config.inc.php либо не находится, либо в нём (или в файлах config.core.php) прописаны старые пути от VPS.

Что проверить:
1. Пути в config.core.php — их три штуки:

  • /public_html/config.core.php
  • /public_html/manager/config.core.php
  • /public_html/connectors/config.core.php
В каждом должен быть правильный абсолютный путь:
define('MODX_CORE_PATH', '/home/os/public_html/core/');
2. Пути в core/config/config.inc.php — там куча путей (MODX_BASE_PATH, MODX_CORE_PATH, MODX_CONNECTORS_PATH и т.д.). Все должны соответствовать новой структуре на sweb.

3. Проверь что файл вообще читается:

// временно в index.php после <?php
   var_dump(file_exists('/home/os/public_html/core/config/config.inc.php'));
   var_dump(is_readable('/home/os/public_html/core/config/config.inc.php'));
   die();
4. Права доступа — config.inc.php должен быть читаем (644 обычно хватает).
    Николай
    2 часа назад
    0
    Надо было добавить, что это после подключения ssl произошло, до этого всё хорошо было
    После добавил в core/config/config.inc.php
    if (!defined('MODX_URL_SCHEME')) {
    $url_scheme= 'https://';
    }
    вместо того, что там было (без этого сайт без скриптов и стилей работает)

    Сейчас появилась крамольная мысль прописать эту строку в остальные конфиги… Стоит?
      Николай
      1 час назад
      0
      Отвечу сам себе — не стоит)
      Николай
      2 часа назад
      0
      Если знаете зачем в папке manager лежит файл .htaccess с директивой RewriteEngine Off расскажите пожалуйста. Убрал, вроде заработало.
      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
      4