Всего 123 609 комментариев

Игорь
29 ноября 2023, 19:58
0
делаю свои первые сайты на MODX 3, хочу что бы всё было правильно и в логах не было кучи сообщений (предупреждений/ошибок). Если дело в сервере, то нужно понять чего именно там не хватает в настройках… если дело в «моих кривых руках», то тогда я не знаю (с MODX 2 уже давно работаю)… ))
Stepan
29 ноября 2023, 15:55
0
Сергей, а что остановит КМ использовать setOption пару раз? или думаете не применится?
Дмитрий
29 ноября 2023, 15:46
+1
php-erorrs.log ругается на плагин с id 8. Вот тут обсуждали похожую тему: modx.pro/help/19871
Stepan
29 ноября 2023, 15:35
0
Такое использование composer возможно только если MODX установлен из composer(не пробовал)
в обратном случае если вы попробуете установить пакет в core при помощи composer то потеряете половину ядра если не более....
наверное есть смысл в index.php добавлять ссылку на кастомный autoload.php куда и ставить пакеты…
ЗЫ
не туда ответил, но может кому и пригодится
Columb
29 ноября 2023, 15:32
0
Спасибо! Все проверил. У вас в «Режиме работы PHP» выбрано «Версия PHP — PHP-FPM-php74»?
Columb
29 ноября 2023, 15:28
0
Спасибо, в логах имеем вот такие ошибки
php-erorrs.log
thrown in /var/www/my_site_user/data/www/my-site.ru/core/cache/includes/elements/modplugin/8.include.cache.php on line 34 [29-Nov-2023 14:22:16 Europe/Moscow] PHP Fatal error:  Uncaught Error: Call to a member function clearCache() on null in /var/www/my_site_use/data/www/my-site.ru/core/cache/includes/elements/modplugin/8.include.cache.php:34
my-site.ru-frontend.error.log
thrown in /var/www/my_site_user/data/www/my-site.ru/core/cache/includes/elements/modplugin/8.include.cache.php on line 34" while reading upstream, client: XX.XXXX.XX, server: my-site.ru, request: "GET / HTTP/1.1", upstream: "fastcgi://unix:/var/run/my-site.ru.sock:", host: "my-site.ru", referrer: ""
2023/11/29 12:20:00 [error] 42300#42300: *803 FastCGI sent in stderr: "PHP message: PHP Fatal error:  Uncaught Error: Call to a member function clearCache() 2023/11/29 12:20:17 [error] 42300#42300: *806 FastCGI sent in stderr: "PHP message: PHP Fatal error:  Uncaught Error: Call to a member function clearCache() on null in /var/www/my_site_user/data/www/my-site.ru/core/cache/includes/elements/modplugin/8.include.cache.php:34

Stack trace:
#0 /var/www/my_site_user/data/www/my-site.ru/core/model/modx/modscript.class.php(76): include()
#1 /var/www/my_site_user/data/www/my-site.ru/core/model/modx/modx.class.php(1674): modScript->process(NULL)
#2 /var/www/my_site_user/data/www/my-site.ru/core/model/modx/modx.class.php(2769): modX->invokeEvent('OnWebPageComple...')
#3 [internal function]: modX->_postProcess()
Дмитрий
29 ноября 2023, 14:51
+1
Сам конфиг nginx не менял, его и не надо менять, т.к он переопределяется настройками в панели. Если вы переносили сайт, а не чистую установку делали — на всякий случай проверьте все пути в конфигах config.core.php и /core/config/config.inc.php, они должны быть вида /var/www/site_user/data/www/site.ru/… — при условии что вы создавали пользователя site_user через панель и там же добавляли сайт. Также посмотрите настройки url в системных настройках: сис. настройки -> core -> дружественные URL.

Наумов Алексей
29 ноября 2023, 12:25
1
+1
Есть такая штука:
modstore.pro/packages/ecommerce/seotabs

Но вообще принцип:
плагин на OnPageNotFound, в котором разбирается текущий url и происходит отображение нужной информации.
Володя
29 ноября 2023, 10:21
+1
он и не кешируется, в первом варианте вы передаете where как строку и переменная $timeago попадает туда в виде
$timeago
это некорректный json который отбрасывается.

во втором варианте все отработает как и положенно так как передали массив.
Николай Савин
29 ноября 2023, 09:20
+1
Вот так вот без логов и подробностей сложно сказать что пошло не так. Чаще всего на практике проблемы возникают с правами. Не так юзера назвали, не того юзера прописали в php-fpm pool, название сокета может не совпадать в nginx конфиге и php-fpm pool

Вам нужно изучить логи сайта /var/www/my_site_user/logs/php_errors.log, а так же заглянуть в логи /var/log/php7.4-fpm.log, возможно еще /var/log/nginx/error.log
Там по любому будет обозначено, где проблема.
Николай Савин
29 ноября 2023, 09:09
0
Игорь, а вы какую задачу решаете?
Columb
29 ноября 2023, 04:14
0
Спасибо, что поделились настройкой конфигов, но у меня так и получилось запустить (перенести) сайт. При первом «запуске» — сайт работает, но при переходе по всем ссылкам сайта получаю главную страницу (при этом в браузере ссылки меняются). Если вручную внести ваш конфиг, то при переходе по ссылкам сайта получаю — 404 Not Found. Меняли ли вы сам конфиг nginx.config сервера?
ViktorK
29 ноября 2023, 00:00
0
Да, так работает, спасибо!
Но where вроде не кешируется если указан массив. Поэтому я хотел в JSON формате.
Артур Шевченко
28 ноября 2023, 23:28
0
Попробуй так
{var $timeago = '@FILE snippets/timeago.php' | snippet }
{'!pdoPage' | snippet : [
	'element' => 'msProducts',
	'tpl' => '@FILE chunks/tovarPreview4row.tpl',
	'parents' => 2,
	'limit' => 48,
	'where' => ["publishedon:>=" =>   $timeago] ,
	'sortby' => '{"publishedon": "desc"}',
        'includeThumbs' => '140x140',
	'showLog' => 1
]}
Игорь
28 ноября 2023, 22:45
0
Я посмотрел в настройках MODX — есть некоторые различия (первый вариант где всё работает на Beget — второй где сообшения вылазят):
Версия PHP: 8.1.25 — 8.1.19
Версия базы данных: 5.7.21-20-beget-5.7.21-20-1-log — 8.0.26
Кодировка базы данных: utf8 — utf8mb4
PDO drivers: odbc, sqlite, mysql, firebird, pgsql — sqlite, mysql

в остальном, вроде, всё похоже
Игорь
28 ноября 2023, 22:27
0
Продолжаю думать, что всё дело в настройках PHP и расширений на хостинге. Хостинг webhost1.ru
Никто не сталкивался с таким?
Николай Савин
28 ноября 2023, 18:31
0
AjaxForm это просто JS оболочка для FormIT или любых других сниппетов. Компонент сам по себе ничего не делает, никаких серверных задач не выполняет. Там просто нечего адаптировать.
Разве что, сам установщик
Игорь
28 ноября 2023, 18:09
0
Я не думал, что AjaxForm не адаптирован под MODX3 (зачем же он тогда в репозитарии установщика отображается?).
Мне сейчас кажется, что дело, всё-таки, в настройках хостинга: каких-то директив не хватает…
Сегодня для примера на другом хостинге (на своем Beget) создал новый сайт MODX 3, установил Formit, AjaxForm и все другие компоненты с сайта-примера, скопировал чанки с формами, шаблон — пока всё работает «как часы» (сообщений в консоле нет).
К сожалению, не получается пока просто скопировать сайт — Vapor выдаёт ошибку, UpgradeModx не хочет устанавливаться, прямого доступа к хостингу, на данный момент, нет.
Можно просто попытаться переустановить MODX, но, опять же, без резервной копии страшно (вдруг всё тупо сломается, раз сейчас всё так странно там), неделя работы какой-никакой… ((
Константин Ильин
28 ноября 2023, 17:43
0
Так причем тут jQuery?
AjaxForm(не только js имеется ввиду, а его php) на сколько я знаю вообще не адаптирован под MODX 3, FetchIt прямая и простая замена.